Move symfony cache component

Fix #170, Replace #177

Depends on https://github.com/FriendsOfSymfony/FOSHttpCache/pull/145

*TODO*
* [ ] Wrap up https://github.com/FriendsOfSymfony/FOSHttpCache/pull/145, tag a version and up the required version in composer.json
* [ ] Documentation (see also #178 but note that things changed since then)
so you want to have the logic of every config option of every known subscriber also in the kernel? this is exactly what i wanted to get rid of... the kernel would need to know about the options of each subscriber, and this method becomes even more complicated. and you have two places to define the options, in the HttpCache and in the UserContextSubscriber. or did you mean blindly passing the kernel $options to the subscriber? that could  work, but those options are not namespaced atm so we would need to namespace them i guess.

but even then, i am -1 on this idea. i want to keep the kernel simple. if you want anything but the default, just overwrite getDefaultSubscribers and instantiate your own subscribers.