Restore "Merge branch 'master' into 2.0".

This reverts commit 8e643be748f12879b3385fa03239b77a5fd427a1.

Conflicts:
	community/server/src/main/coffeescript/neo4j/webadmin/modules/splash/splash.haml
Merge branch 'master' into 2.0

Conflicts:
	community/cypher/CHANGES.txt
	community/cypher/src/docs/dev/ql/functions/index.asciidoc
	community/cypher/src/main/scala/org/neo4j/cypher/CypherException.scala
	community/cypher/src/main/scala/org/neo4j/cypher/internal/commands/NamedPath.scala
	community/cypher/src/main/scala/org/neo4j/cypher/internal/commands/StartItem.scala
	community/cypher/src/main/scala/org/neo4j/cypher/internal/executionplan/builders/AggregationBuilder.scala
	community/cypher/src/main/scala/org/neo4j/cypher/internal/parser/v1_8/CypherParserImpl.scala
	community/cypher/src/main/scala/org/neo4j/cypher/internal/parser/v1_9/CypherParserImpl.scala
	community/cypher/src/main/scala/org/neo4j/cypher/internal/pipes/QueryState.scala
	community/cypher/src/main/scala/org/neo4j/cypher/internal/pipes/UnionPipe.scala
	community/cypher/src/main/scala/org/neo4j/cypher/internal/pipes/matching/SingleStepTrail.scala
	community/cypher/src/test/scala/org/neo4j/cypher/ExecutionEngineTest.scala
	community/cypher/src/test/scala/org/neo4j/cypher/docgen/FunctionsTest.scala
	community/cypher/src/test/scala/org/neo4j/cypher/internal/pipes/matching/HistoryTest.scala
	community/kernel/src/main/java/org/neo4j/unsafe/batchinsert/BatchInserterImpl.java
	community/kernel/src/test/java/org/neo4j/kernel/impl/core/TestJumpingIdGenerator.java
	community/kernel/src/test/java/org/neo4j/kernel/impl/nioneo/store/TestNeoStore.java
	community/kernel/src/test/java/org/neo4j/kernel/impl/storemigration/PropertyWriterTestIT.java
	community/kernel/src/test/java/org/neo4j/kernel/impl/storemigration/StoreUpgraderTestIT.java
	community/kernel/src/test/java/org/neo4j/test/impl/EphemeralFileSystemAbstraction.java
	community/server/CHANGES.txt
	community/server/pom.xml
	community/server/src/test/java/org/neo4j/server/WrappingNeoServerBootstrapperDocIT.java
	community/server/src/test/java/org/neo4j/server/rrd/DatabasePrimitivesSampleableBaseDocTest.java
	community/server/src/test/java/org/neo4j/server/webadmin/rest/MonitorServiceDocTest.java
	community/shell/src/test/java/org/neo4j/shell/TestApps.java
	enterprise/ha/src/main/java/org/neo4j/graphdb/factory/HighlyAvailableGraphDatabaseFactory.java
	enterprise/ha/src/main/java/org/neo4j/kernel/ha/HighlyAvailableGraphDatabase.java
	enterprise/ha/src/test/java/org/neo4j/ha/upgrade/RollingUpgradeIT.java
	enterprise/ha/src/test/java/org/neo4j/kernel/impl/cache/TestEnterpriseCacheType.java
	packaging/standalone/standalone-advanced/src/main/distribution/text/advanced/CHANGES.txt
	packaging/standalone/standalone-community/src/main/distribution/text/community/CHANGES.txt
	packaging/standalone/standalone-enterprise/src/main/distribution/text/enterprise/CHANGES.txt
GraphDatabaseFactory isolates each builder in terms of factory state.

o Introduces GraphDatabaseFactoryState
o All setters return a subtype of GraphDatabaseFactory for call chaining
o Disables checking of GraphDatabaseFactory in clirr, i.e. this is a
breaking change
Ignore test, prior to possible deletion.
Moved and renamed functional tests.
Fixed broken license for seedrandom.js
Modified license check project to not update license headers in its own project.
Moves node delete into the kernel API.

o Lock taking for node deletion is now done in locking statement context
o State modification is now done through TxState.
Remove Cypher 1.8 parser.
StoreUpgrader minor cleanup.

o Remove unused msgLog field and constructor parameter.
o Use FileSystemAbstraction instead of unsafe java.io.File operations.

Conflicts:
	community/kernel/src/main/java/org/neo4j/kernel/impl/storemigration/StoreUpgrader.java
	community/kernel/src/test/java/org/neo4j/kernel/impl/storemigration/StoreUpgraderTestIT.java
Check that original log file exists before trying to copy it.

Conflicts:
	community/kernel/src/main/java/org/neo4j/kernel/impl/storemigration/StoreUpgrader.java
Explictly allow breaking changes to the config API, to clean up all the stuff we made public that is not supposed to be.
Fixes test failures
Fix for borken shell.
Initial PEG parser for Cypher

Handles most basic queries (start, match, where, return)
Add basic single node create
Add node labels as predicates