Refactorings
SPI impl is it's own class now
License header in DefaultMasterImplSPI
Merge branch '1.9-maint' into masterfix

Conflicts:
	enterprise/backup/src/main/java/org/neo4j/backup/OnlineBackupKernelExtension.java
	enterprise/ha/src/test/java/org/neo4j/ha/TestPullUpdatesApplied.java
Added additional test for giving parameter/statement in the opposite order.
Fix some warnings.
Remove deprecated constructors for EmbeddedGraphDatabase.

o Use GraphDatabaseFactory instead.
Cleans up constraint definition API slightly, embracing the fact that we don't have a good way to describe arbitrarypredicate definitions.
Moved implementation classes added in 2.0 away from packages where they are exposed as public API.
Fixes test failures
Change GCR to High-Performance Cache in documentation.
Improve diagnostic for strange occasional test failure.

o We sometimes get a NullPointerException from FileUtils#copyRecursively() when
   it's being used on files that have been retrieved from resourced directories.
Merge pull request #1402 from jakewins/deserializer-tests

Added additional test for giving parameter/statement in the opposite order.
Merge pull request #1398 from jakewins/cleanup-constraint-api

Cleanup constraint api
Consistency checker: Indexes->NodeStore: Verify node exists
Consistency checker: Indexes->NodeStore: Verify node has expected label
quoting JAVACMD so that people can set JAVA_HOME to paths which have spaces in
Fixes problem with collection index types
Improving cleanup in HA tests for windows.
Admitting defeat, laying my @Ignore at the altar of Gates for consideration.