Added GremlinQuery with support for the following things:

 - Supports multiple query steps that interact with each other
 - Provides mechanisms for embedding gremlin queries within strings passed to conditions
 - Provides the ability for multiple separate gremlin queries to interact

This also adds the following features and bug fixes:
 - Iteration is now supported inside of the XML syntax
 - DiscoverJavaFiles now happens after decompilation (this fixes some issues that were causing inType not to work when used with existing binaries)
 - Unit tests were enhanced to cover the additional functionality
From the method name I wouldn't expect it to internally call transform() method. So I would keep calling this to get the next transformed instance :). Does it make sense to have this in if(currentIterator == null) ?