Started adding the neccessary building blocks
From AST to Pipe through the new query planner

Added LogicalPlanner, QueryGraphBuilder and ExecutionPlanBuilder
Add new Planner into ExecutionPlanBuilder

This means that the new query planner now builds some type
of queries.
Merge pull request #2040 from systay/planner-bootstrap

First parts of the new plan building system
Move CSV loading from QueryContext to ExternalResources
Introduce observer pattern for Periodic Commit and Load CSV+Periodic Commit

o Document and test interaction between Periodic Commit and Load CSV
Refactor ExecutionPlanBuilder

o Broke out all state management into ExecutionWorkflowBuilder
o Add MappingBuilder
Disable commit row alignment for aggregation and union
Merge pull request #2047 from davidegrohmann/2.1-loadcsv-periodiccommit

Try to only commit on row boundary when using Load CSV and Periodic Commit
Merge pull request #2042 from tinwelint/2.1-accept-relgroup

RelationshipGroup commands accept visitors
More consistency checking for relationship group records

Added the following checks:
o RelationshipGroupRecord has invalid rel type id
o RelationshipGroupRecord has invalid next pointer
o RelationshipGroupRecord chain is unsorted
o RelationshipGroupRecord refers to relationship that is not in use
o RelationshipGroupRecord refers to relationship that is not first in its
  chain
o RelationshipGroupRecord refers to relationship that is of a different
  relationship type than its group