refactoring - move iterators to their own file
big refactor - merge Array and Object Iterators, as they do the same thing