Consistency checker: first checks for label scan store.

Transpose nodes and labels in label NodeLabelRange to make consistency checking easier.
Wire in inconsistency reporting for label scan store.
Introduces the cypher-commons module and moves some APIs over to it
Move 2.0 cypher compiler to cypher-compiler-2.0 package
Removes 1.9 compiler
Makes sure all of 2.0 compiles correctly
Replace the 1.9 compiler with version from 1.9-maint

And move into cypher-compiler-1.9 package
Merge pull request #1383 from systay/cypher-compilers-mk2

Separates Cypher intro multiple modules
Adds properties to nodes and relationships

Adds parsing for properties on nodes and relationships
Moves properties from patterns to predicates where appropriate
Allows nodes to have properties in MATCH
QueryContext now takes longs instead of PropertyContainers for property operations
The Scala PatternMatcher handles nodes with properties
Adds failing test that shows the problem with properties on patterns pointing to other parts of the pattern
Adds properties to variable length relationships
Rewrites properties on relationships
Update the SemanticCheck of patterns to work in two phases

First, semantic check the symbols, and only after, check the expressions
on the pattern. This allow expressions in patterns to reference other
parts of the same pattern
Merge pull request #1381 from cleishm/match-properties

MATCH with properties
Extend Closeable instead of AutoCloseable.
Unwind nested if statements.
Merge pull request #1380 from boggle/2.0-label-scan-store-verification

2.0 label scan store verification
cypher: Remove duplicated helper classes from compiler v1.9