Implemented Symfony reverse proxy support for user context hash.

> Ref #26
> Relates to https://github.com/ezsystems/ezpublish-kernel/pull/1025

Finally the PR :smile: 
This adds support for Symfony RP for user context hash feature.

For this to work, you need to:
* Make your `AppCache` class extend `FOS\HttpCacheBundle\HttpCache` instead of `Symfony\Bundle\FrameworkBundle\HttpCache\HttpCache`.
* Ensure `USER_HASH_ACCEPT_HEADER`, `USER_HASH_HEADER` and `USER_HASH_METHOD` constants match your configuration (cannot rely on semantic config here as we're way too early for that).
* Ensure `SESSION_NAME_PREFIX` matches your environment.

In any case, it is possible to redefine those constants to fit your configuration.

## TODO
* [x] Implement user context hash support for Symfony RP
* [x] Clear documentation on how to set it up
* [x] Make user context hash response vary on sessionId(s) only as Cookie may contain undesired info (e.g. analytics)
* [x] Try to do some tests
makes me wonder: what about other authentication methods? basic authentication with the "Authorization" header? or custom authentication methods.

i think this method needs to be protected too (sorry @ddeboer, i agree with private as much as we can, but seems here we can't).

then for basic auth, you would instead check if that header is not present, and also overwrite the cleanup method to unconditionally remove all cookies.