So with the store work done, and this light implementation in place, we are going to be exercising important pool code (transaction chaser) in v4. The main limits are that (1) wallets can't submit a tx or package until predecessors are confirmed, and (2) wallets won't see unconfirmed txs relayed via p2p. This latter limitation could be opened up pretty easily, limited to accepting only those that spend confirmed outputs and those that are not conflicting (first seen). To handle conflicts and spending of unconfirmed, we need an index, which is the hard point for v5 (mempool vs. tx pool).