Eliminate races between tx checks and adding them to the mempool, ensure the chain doesn't change while we're working with the new tx. Ensure only one block addition attempt could be in progress.
Makes no sense copying the Pool around.
With the move to a separate package, naming can be simplified: MemPool -> Pool, PoolItem -> Item, PoolItems -> Items.