rewritten the depthfrist,breadhtfirst for featureiterator. This is a first implementation and asumes distance is 1. Atm the interpretation of distance > 1 for non flat iterators is still a bit unlcear. This is left for later