Add step to merge compatible adjacent blocks
Fix memory leak where segments in block removed via merge do not get deleted
sort blocks from biggest to smallest (in terms of their segment counts) before doing greedy extend)