Refactored plan generation into smaller pieces, and tested CullingPlanGenerator
More work on plan generators
Introduced CantHandleQueryException to fail query compilation in the period moving over to new query plans and runtime
Removes most dependencies to neo4j-kernel from compiler-2.1
Added ExecutionPlan for 2.1
Merge remote-tracking branch 'origin/cypher-2.1' into cypher-2.1

Conflicts:
	community/cypher/cypher-compiler-2.1/src/main/java/org/neo4j/cypher/internal/compiler/v2_1/runtime/LabelScanOp.java
	community/cypher/cypher-compiler-2.1/src/main/scala/org/neo4j/cypher/internal/compiler/v2_1/ast/Property.scala
	community/cypher/cypher-compiler-2.1/src/main/scala/org/neo4j/cypher/internal/compiler/v2_1/parser/CypherParser.scala
	community/cypher/cypher/src/main/java/org/neo4j/cypher/internal/spi/v2_1/StatementContext.java
	community/cypher/cypher/src/test/scala/org/neo4j/cypher/OperatorTest.scala
More progress towards an end-to-end executable query