fix tests
all of those follow the naming scheme 'Recursive<*>Iterator'
- Add ability to control iterator class of ArrayObject - Implement option to make CachingIterator cache all read elements - Implement ArrayAccess to CachingIterator to access cached elements - Update docu - Update tests