Moving the user context logic out of the kernel inheritance hierarchy.

fix #170

This adds an event handler to the cache kernel. The setup is:

```
$kernel = new HttpCache($kernel);
$kernel->addSubscriber(new UserContextSubscriber());
$kernel->addSubscriber(new PurgeSubscriber());
$kernel->registerSubscriber(new BanSubscriber());
```

**TODO**
* [ ] Adjust documentation (see also #178 and particularly the last comment, things changed since the description was done)
* [x] #178 for default behaviour
Errr, why are you adding that here? This should go to `FOS\HttpCacheBundle\SymfonyCache\HttpCache::getDefaultSubscribers()` !

Now we could use `fos_*` options provided in `getOptions()` to configure the UserContentSubscriber, with a fallback to constants if not provided. And constants keep having sense :wink: