Make NodeHashJoinPipe null safe
Bump the version for bin dependencies on Cypher 1.9 and 2.0
Update the 2.0 SPI after upgrading to 2.0.3

This should not be necessary as LOAD CSV is not part of 2.0.
This can be removed once we remove the CSV SPI bits from 2.0.
Fix PROFILE CYPHER 2.0 in 2.1
Introduced a new way to write planner tests

Moved CartesianProductPlanningIntegrationTest to this new way
Move Scala test file from src/test/java to src/test/scala.
Moves *PlanningIntegrationTest to the new test format
Split pprint package into generic and cypher specific parts

o New package: perty - generic pretty printing facility
o New package: docbuilders - cypher specific docbuilers
o Add TopLevelDocBuilder that provides convenience mixins AsPretty, AsPrettyToString
o Make relevant Cypher traits use internalDocBuilder.AsPrettyToString

Conflicts:
	community/cypher/cypher-compiler-2.1/src/main/scala/org/neo4j/cypher/internal/compiler/v2_1/planner/PlannerQuery.scala
	community/cypher/cypher-compiler-2.1/src/main/scala/org/neo4j/cypher/internal/compiler/v2_1/planner/QueryGraph.scala
	community/cypher/cypher-compiler-2.1/src/main/scala/org/neo4j/cypher/internal/compiler/v2_1/planner/QueryProjection.scala
	community/cypher/cypher-compiler-2.1/src/main/scala/org/neo4j/cypher/internal/compiler/v2_1/planner/Selections.scala
	community/cypher/cypher-compiler-2.1/src/main/scala/org/neo4j/cypher/internal/compiler/v2_1/planner/logical/plans/LogicalPlan.scala
	community/cypher/cypher-compiler-2.1/src/main/scala/org/neo4j/cypher/internal/compiler/v2_1/pprint/Pretty.scala
Moves CandidateListTest to the new format
Cost is now it's own type and not simply a double
Cardinality is now it's own type
Introduce CostPerRow and use it
Introduce Multiplier and have it used for selectivity and degree
Remove unneccessary type check from SymbolTable
Make QG handle optional match followed by match