added a check to avoid infinite recursions when using a negative number of array dimensions - now throwing an exception
code cleanup
changed the resolver to use use a proper queue instead of a LinkedList
Merge pull request #1 from Sable/develop

update