Add Graph.apply method that support HList.
Add Query.fromTree in MacroHelper.
Refactor query macro to use Query.fromTree helper method.
Move query ast definition is a dedicated file.
Make parser a class and instantiate it when parsing.

This is needed because as spotted by @ijuma parser combinators are *NOT* thread-safe.
Move query validation logic into MacroHelper.
Make Property class label parameter implicit.
Add Vertex properties extractor into MacroHelper.
Add helper method to resolve EntityLoader from Vertex.
Introduce mapping support in Edge.
Use Any* in EntityLoader.
Initial EntityFinder implementation.