FIX: set item pointers to null if item is taken (by another thread)

This way, we do not have to scan the whole partition for items that have not been set to nullptr yet
add some more debug assertions
FIX: repartition right-most partiton after a fallback
REF: extract method try_shrink
DOC; prepare for handling dead blocks
Allow instatiation of active blocks with lvl > 0
add a flag to indicate whether a block is dead
remove DeadBlock
remove LastBlock
merge BaseBlock into ActiveBlock
REF
set end pointer correctly when instantiating block of lvl >0
REF: reduces checks if merge is required
REF: rename
REBASME: preliminary work for handling dead blocks
REF: extract method to move item pointers from one block to another
fix: order of member initialization
add some additional assertions
make merging more intuitive
REVERTME: execute tests till failure