Similar to #350 but without assuming that the parent of the incoming block or fork choice update head is linked directly with the canonical chain. This one DOES assume that it is at least indirectly linked. That is, that there exists an ancestor of the new block or head that is part of the canonical chain.
This supports reorgs where the new head branch is deeper than just one block, which is what #350 supports.
Similar to #350 but without assuming that the parent of the incoming block or fork choice update head is linked directly with the canonical chain. This one DOES assume that it is at least indirectly linked. That is, that there exists an ancestor of the new block or head that is part of the canonical chain.
This supports reorgs where the new head branch is deeper than just one block, which is what #350 supports.