Extra debugging output, some useless field removal, tcpNoDelay added
Fixes responding to internal messages, having it handle the headers properly
Fixes case where single HA instance would perpetually try to elect a master

When an HA instance is alone in the cluster, it will try to contact every
 other instance (i.e. none) for votes and, since by default it holds the master
 role itself, being the only instance, it will wait for the first response
 to come before asking itself. But a response never comes, so the election
 time outs, rinse repeat. This commit fixes that.
It also introduces a test case that demostrates the problem.
Finally, it refactors the ElectionContext to not require delegation
 from ElectionState method calls, making mocking easier.
fixes concurrency issue due to shared instance variable for JsonGenerator #955
fixes #961 wrong content-encoding instead of content-type charset=utf-8
Check if server can be started before starting it for server tests

Make the error message a bit more explicit if there is already a neo4j instance
running on localhost:7474
Merge pull request #963 from mneedham/server-check

Check if server can be started before starting it for server tests
Merge pull request #957 from jexp/955

Eyeballed this, seems sane.
Merge pull request #962 from jexp/content-encoding

fixes #961 wrong content-encoding instead of content-type charset=utf-8
A simple neo4j desktop app

o Launches one neo4j server database inside the JVM pointing to a database
  of choice.
o Integrated launch4j for building an .exe file of one uber-jar of everything.
o Ability to tweak heap size of the launched JVM (requires restart)
o Ability to tweak database properties (uses <dbDir>/neo4j.properties convention for now).
o Support for server extensions, looks at extensions/*.jar next to
  the run .exe file.
o Also added GUI to configure which packages contain resources, and
  should be mounted by the server.
o Added system tray integration:
  If the window close button is pressed and the database is stopped then the
  Neo4j Desktop app is shut down fully.
  But if the database is in any other state the app is just minimized to the
  tray, and a click on the tray will reveal it again. This is the simplest
  possible integration to start off with.

co-author: LWN, AJ