refactoring and optimizations.. nearly done. ContinuousBag will be faster once FractalSortedItemList is fixed, so for now it uses the slower ArrayList impl