Use jgit to get git describe for the kernel version.
added missing -Dfile.encoding=UTF-8 argument to startup scripts branch used when starting without changing the user
also added missing file.encoding argument to the console call
Fixes execution guard bug preventing server start.

Detects uninitialized server and wraps with more informative exception.
Adds a test to detect this bug and patches Jetty6WebServer to correct
the issue.
Remove useless lines copied from different test
Adds the ability to add HeartbeatListeners after the Heartbeat state machine has been
 initialized.

Authored by RO, part of https://github.com/neo4j/neo4j/pull/476/
Renames CoordinatorIncapableCredentialsProvider to NotElecteableElectionCredentialsProvider

Introduces NotElectableElectionCredentials, used by the new provider
Replaces instances of the old class with the new
Introduces new utility method in ClusterManager to start cluster with arbiters
Small fixes in ClusterManager

Authored by RO, part of https://github.com/neo4j/neo4j/pull/476/
Renames HeartbeatFailedReelectionListener to HeartbeatReelectionListener

Updates reference in MultiPaxosServerFactory

Authored by RO, part of https://github.com/neo4j/neo4j/pull/476/
Factors out common code in ClusterState

Authored by RO, part of https://github.com/neo4j/neo4j/pull/476/
Enables slave only functionality in HA cluster members

Introduces slave_only setting, which if set makes HAGD use NotElectableElectionCredentials
ClusterClient implements Election
Election is expanded with performRoleElections(), a corresponding message is added in
 ElectionMessage and is handled in ElectionState. Handling consists of holding an
 election for all currently known roles.
ElectionState, when doing election, no longer backs off with a counter. Instead
 a timeout is set and the first instance in the list of instances is expected to
 perform the election. On timeout the second one is tried etc.
Adds tests for slave only functionality

Authored by RO, part of https://github.com/neo4j/neo4j/pull/476/
Fixes synchronization issue with delivery of learn messages on instance join

This makes sure that learn messages sent from us for us are treated as internal
 messages. That way they will be synchronously processed before any other
 incoming messages.
This is expected to solve some intermittent test failures.
Removes some explicit shutdown calls on executors on Server.stop(). Relies on proper clean up by netty instead.

This is in part a forward port of bee78fc167bc65fae4f39f03a826eee82505cb8e with a provision for backwards compatibility
Updates changelogs
Adds license header
Fixes issue with relationship delete cache invalidation, where recovered commands would fail to
 properly update their node's relationship chain position

RelationshipCommand now on execute will, when recovered, read the current store version and use
 that to invalidate/update the cache.
Removes methods from RelatioshipCommand that were not used and since this change potentially misleading
Fixes some formatting in RelationshipCommand
Enables test case for this issue
Merge pull request #488 from nawroth/hashes

Use jgit to get git describe for the kernel version
Fixed linebreak issue on server start output
Added a bit more of explanation around the neewsfeed example.
Check 3rd-party licenses in all modules.
Makes TestPullUpdatesApplied  use proper synchronization instead of relying on Thread.sleep()