Refactoring Desktop UI

o Moves settings into separate dialog [INCOMPLETE]
o Move buttons to lower section of window
o Replace memory slider with ability to edit .vmoptions file
o Remove "gear.png"
o Lots of smaller visual changes (spacing etc.)
Break MainWindow into smaller classes.

o Introduce DesktopModel.
o Pull SettingsDialog into its own file.
Enable SystemOutDebugWindow by default.
Extract functionality from MainWindow into smaller classes.
Make SettingsDialog use new Components factory methods
Modify SchemaLock to be only one class.

o Resolves issue where multiple transactions could hold a schema write lock
o Improves index lookup performance by one order of magnitude
o Refactors uniqueness constraint code to not deadlock when constraint index is
  created.
o Removes some of the uniqueness index methods that were leaking through
  the kernel API.
o Drop and list uniqueness indexes are still exposed, since the constraint
  index cleanup job uses them. Added appropriate TODOs for pulling that job
  into the kernel, rather than keeping it on the outside.
Clean up layout of server extensions pane in settings dialog in Neo4j Desktop
Enable returning stats from the transactional endpoint.

This is required by the Neo4j browser.
Merge pull request #1067 from jakewins/index-lookup-performance

Modify SchemaLock to be only one class.
Merge branch '2.0-fancy-desktop'

Conflicts:
	packaging/neo4j-desktop/src/main/java/org/neo4j/desktop/ui/MainWindow.java
	packaging/neo4j-desktop/src/main/java/org/neo4j/desktop/ui/UIHelper.java
Removed broken assertion from cypher doc tests
Update license and fix button positions