Simplify CandidateList by removing pruning
Move covering concept from LogicalPlan to QueryGraph
Renamed Projections to QueryProjection
Introduced the concept of NoProjection
Introduce PlannerQuery

Instead of using QueryGraph to represent a whole
query, this commit now introduces a PlannerQuery,
which has this role. The PlannerQuery contains a
QueryGraph and a QueryProjection, and the WITH
structure of a query.
Break up PlanningStrategy

Now two parts solve CypherQueries together -
QueryGraphSolver solves the actual MATCH part
of a query, and QueryPlanningStrategy handles
projection and WITH.
Add AggregationProjection

This allows a PlannerQuery to represent a query
with aggregation
Made cartesianProduct use greedy planning
Merge pull request #2396 from systay/ronja-refactoring

Ronja refactoring
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