Split `BlockBlobs` table


## What

The `BlockBlobs` table stores the serialized block blob, this issues is for splitting that table into a `BlockHeaderBlobs` and `BlockTxHashes`.


## Why 

The block blob contains the miner tx blob which means we are duplicating miner txs in the DB. Splitting the table also means we wouldn't have to parse the full block when we need to retrieve tx blobs for the block. 

