Rollups: Keep blocks for as long as necessary (and no longer)
Previously, we kept a fixed window of 100 blocks. Now we need to keep a block until its successor block has been finalized, which might be longer than 100 blocks, but is likely much shorter.
Fixes tezos/tezos#2068 (closed).