Refactor out sort, skip and limit
Add aggregation to planning
Merge pull request #2399 from systay/ronja-aggregation

Ronja aggregation
Changed hash distribution algo for primitive collections.
Merge pull request #2402 from jakewins/2.1-primitive-hash

Changed hash distribution algo for primitive collections.
Fuse two copies of LeafPlanningIT and move them to the right place (planner.logical)
Add basic support for WITH to Ronja

o Support for handling some forms of WITH in SimplePlannerQueryBuilder
o Support for planning tails in QueryPlanningStrategy
o Add QueryPlanProducers for sort, skip, limit, projection
o Add/Update QueryPlanProducers: planApplyTail, planArgumentRow, planQueryArgumentRow, planSingleRow
o Make above query plan producers update the tail if the query graph has a tail
o Make projection + sortSkipAndLimit use QueryPlanProducers
o Visitor support for PlannerQuery
o SingleRow now keeps type info for building the correct SymbolTable in NullPipe. This should go away later.
Hide Ronja behind a compatibility setting

This commit makes the old planner the default
planner to use. Ronja can still be used, but
has to be explicitly selected.
Make SimplePlannerQueryBuilder produce complete QueryProjection instances instead of gradually building them
Fix wrong error message
Remove NoProjection
Merge pull request #2403 from boggle/ronja-with

  Add basic support for WITH to Ronja
Merge pull request #2400 from systay/hide-ronja

Hide Ronja behind a new keyword
Cypher vs. SQL chapter.