Allow clients to select a bigger max-age (bug 1085739)

https://bugzilla.mozilla.org/show_bug.cgi?id=1085739
https://bugzilla.mozilla.org/show_bug.cgi?id=1088361

Should work exactly like before, excepts clients can select a bigger max-age if they want to.

* `?cache=0` will not return Cache-Control, unless the view already set one before we went through the middleware
* `?cache=garbage` will not return Cache-Control, unless the view already set one before we went through the middleware
* `?cache=1` will return a Cache-Control with max-age set to `settings.CACHE_MIDDLEWARE_SECONDS` since the provided value is too small
* `?cache=240` will return a Cache-Control with max-age set to 240