When syncing finalized blocks, have forkedchain perform bulk verification/persist
Consider the following scenario:

* according to consensus, the head block is 128 and the finalized block is 64
* we download headers for block `[1..128]` and verify they form a chain
* we start importing blocks one by one

Since blocks up to 64 have been finalized, we can be (fairly) certain that validators have already established their validity, so we can reasonably skip some checks for them - in particular, it makes sense to amortize the cost of state root validation and / or database persistence by updating the base only once per N blocks.

N should probably be kept fairly low - 32-128 perhaps - once `head.number >= roundUp(base.number+baseDistance, N)`, a single state root verification should be applied (which, as a side effect, computes the hash keys of all updated nodes) that covers the entire range of N blocks.

Of course, for blocks newer than the finality point, we must perform full validation for every block.
