Simpler generated version information.

Move the logic for generating version information out of the generated
code. Instead expose all the information from the generated code
explicitly and let the generic code take care of presenting it in a nice
format.
Generate version information for all components.

Generates a ComponentVersion class for each jar. This will allow us to see in messages.log
if the versions for all jars match up.
Fix for dangling dynamic label issue.

o Given a node with a single dynamic label record, when removing enough labels from it
  to "down-grade" it to use inlined labels, it correctly marked the dynamic label record
  as not in use. However, when removing yet another label, the logic for updating the node
  record did not take into account the (now unused) dynamic label records, and would update
  the node records list of dynamic label records to be empty.

  This in turn led to the log command not containing the information about the dynamic record
  having been set to not in use, and this would susequently lead to dangling label records.
Include dynamic label records when logging a command to delete a node.

o If a node record was set to not in use, the command serialization would not include
  any dynamic records connected to the node record. This meant that when deleting a
  node that had dynamic records connected to it, the dynamic records would not get
  properly updated in recovery mode or on HA slaves.
Merge pull request #1426 from thobe/2.0-component-versions

Improved Version Information
Don't ask lucene for documents outside valid docId range.
Re-use code for scanning lucene documents.

o Replace specific interfaces with BoundedIterable where possible.
Merge pull request #1439 from jakewins/fix-all-the-things

Fix all the things
Remove some deprecated methods in GraphDatabaseAPI.
Removed deprecated consistency check main class.
Remove deprecated things in the server component.

o Changes Database to be an interface, things piggy-backing on the Database class
  for shipping dependencies around now are assigned those dependencies directly.
o Removes a few small deprecated things in for instance NeoServer.
Removed ZK.
Merge pull request #1418 from jakewins/deprecated

Remove some deprecated methods in GraphDatabaseAPI.
Merge pull request #1441 from jakewins/more-deprecated

Remove deprecated things in the server component.
Catch up CHANGES.txt for recent deprecation removals.
Fix for leaking file handles for rrd db on server startup timeout.
Switched StoreID to not use current time as random seed.
Merge pull request #1444 from jakewins/die-zk-die

Removed ZK.
Fixes ha-robustness issue with dangling dynamic records.
Improvements focused around Cypher 2.0.