Add long cache headers for api views

[delivers #58614074]
https://www.pivotaltracker.com/story/show/58614074

Set very long cache headers (365 days) on api views. This is so that
they can be served from varnish even if the backend app goes down.
Additionally a Vary header has been set on the Authorization header.
This is so that we don't risk sending authenticated results to
unauthenticated clients.

Question for the team:
- What are your thoughts on splitting the view tests down into classes that focus on a specific area?
- What are your thoughts on moving the view decorators into libs?