Add additional tests for X-Forwarded-Host

Against Cypher REST response, and slash redirects
Changed the code so that the transactional endpoint creates URIs based on the request URI (rather than the server's URI). This is better (the server doesn't usually know it's own URI, whereas clients do) and enables X-Forward headers to work, fixing the problem identified in https://gist.github.com/albertoperdomo/6f3d7ffcb1351e5c61ce

However, /db/data and /db/manage (note: no trailing slashes) are not fixed here. That is a different bit of code to tame.
Removed the integration tests pertaining to the correct use of X-Forward-* when redirecting from URIs that don't end in slash to ones that do*.

This is because there is some subtle interaction between Jetty and Jersey that screws this up. We've been through the Jetty code trying to see where this happens, but it's high cost for low value. Therefore when you don't correctly specify (say) /db/mabage/ and instead specify /db/manage then you will likely get incorrect URIs in the 302 response. the solution is not to use the wrong URI.

* This is a dumb decision by Jetty/Jersey. It is clear that http://example.com/foo/ and http://example.com/foo are not the same URI. Meh.
Merge pull request #3277 from jimwebber/master

[2.2] X-Forward Support for Transactional Endpoint