minor memory optimzation and typesafety for Neo4jCypherIterator.
fixed up Neo4jTraversal.
lots of tweaks organizing Neo4j code. Also, we use traversal.memory.set(Graph.Key.hide(g)) so much that I added default methods: Memory.getGraph(), setGraph(), removeGraph(). Makes things MUCH LESS error prone.