RecursiveArrayAccess is iterable and countable

we may have an inception of recursive array access
dont want dirty checking
Merge and fix #18.