Revert "Remove metadata/id from the representation"

This reverts commit 786bbd63768d316c8633bdfb60bfaee2808210a0, and
converts the metadata/id representation to a Long.
Merge pull request #3167 from cleishm/node_metadata

[2.1] Revert "Remove metadata/id from the representation"
Create a filter for dealing with X-Forwarded-*.

Handles X-Forwarded-Host and X-Forwarded-Proto. Moved the handler code out of the OutputFormatProvider into a jetty filter much further down the stack. This should enable all of the Neo4j server resources (including / and /db/manage) to be addressed via an external hostname and other URI scheme.
Merge 2.0-maint into 2.1-maint
Tagging for version 2.1.5
Fixes stop() process in TransactionCommittingResponseUnpacker

TCRU uses the TransactionIdStore to update committing and applying
 tx ids, as expected by the tx commit protocol. However, if a stop()
 was issued, the txIdStore field would be set to null and if this
 happened during a tx apply where the txIdStore.transactionCommitted()
 call had already gone through, the subsequent transactionClosed() event
 would fail with a NPE. This would leave the txIdStore waiting for a
 transaction to apply, which would prohibit the database from shutting
 down.
 This patch removes the setting to null on stop approach and uses
 a boolean to mark the stopped state in TCRU, not allowing any
 more transactions to go through and allowing the shutdown to finish.
Performs log pruning outside of append monitors

so that log pruning, which isn't critical functionality in and around
transaction appends and rotations, outside of any monitors held by
append/rotate. This will make the pauses introduced by rotation smaller so
that other transactions can still append when a log pruning is happening.
Back to development version.
2.1.5-SNAPSHOT -> 2.1.6-SNAPSHOT
Merged 2.1-maint into master
Merge pull request #3180 from cleishm/merge-2.1-into-2.2

[2.2] Merge 2.1 into 2.2
Merge pull request #3187 from tinwelint/2.2-lock-free-prune

[2.2] Performs log pruning outside of append monitors
Merge pull request #3186 from digitalstain/2.2-fix-response-unpacker-stop

[2.2] Fixes stop() process in TransactionCommittingResponseUnpacker
Logs progress catching up to master in HA

Possible after a refactoring where the response unpacker now accepts a
TxHandler in its accept method. This makes it possible to reuse a single
response unpacker for multiple TxHandler purposes, and by extension a
single MasterClient instance for multiple purposes.