Move command converters into it's own package
Move expression conversion to it's own package
Move Selections conversions to the convert package
Move pattern conversions to the convert package
Move query projection conversion to the convert package
Start solving Query using the converter pattern

The important difference with SimplePlannerQueryBuilder is that we
do a foldLeft over the clauses instead of having to use a recursive
call. Folding is simpler and can more easily be composed of
smaller units.
Move solving of MATCH to ClauseConverters
Create PlannerQueryBuilder and start using it in the plannerQuery converters
Tiny refactoring of RETURN handling in ClauseConverters
Handles WITH in plannerQuery converter
Handles UNION in plannerQuery converter
Handles UNWIND in plannerQuery converter
Make sure pattern expressions are accumulated correctly
Make sure projections are included in argument ids
Replace SimplePlannerQueryBuilder with converters
Remove Map[PatternExpression, QueryGraph] everywhere
Remove QueryPlanInput

Since it was merely used to move a UnionQuery together with the corresponding
Map[PatternExpression, QueryGraph], and the latter is now removed, QueryPlanInput
is no longer needed.
Merge pull request #2917 from systay/more-refactoring

More refactoring