New helper
Better logging
Make split resetable (== re-iterable). This will make many operations faster by avoiding to re-compute a full split