Added SubIteratorIterator

The SubIteratorIterator allows to iterate over all sub-iterators of a
RecursiveIteratorIterator in both directions and also over keys of those
sub-iterators only.