Fix various issues with cache management

This PR fixed different issues with the way cache is handled.

* Fix TTL cache cascading to the parents, so the block container will always have the smallest ttl possible from its children
* Add a ResponseListener to the ttl value on the final Response sent to the client
* Fix javascripts and stylesheets management using cache backend
* Add documentation about how cache works
* Refactor the data collector to include cache information