- remove ChunkHolder locking concept as this is no longer needed
- previously we obtained the copy from chunk GET on finalize, meaning the copy could be replaced by a "newer" one (bad)
- work around this issue by introducing concept of "unique" keys to map chunk GET copies to
- correctly handle resetting of various chunk-related classes to actually allow pooling to work
- remove chunks as they are submitted when flushing a SingleThreadQueueExtenting