Documentation for layouts package
Add a simpler interface for caching

Instead of manually setting TTL, we provide a volatility level. The
volatility level is used to set cache expiration for templates and
data both. The `Action.Cache()` method is still available, and can
be used with the `ExtremeVolatility` level to have data but not
templates cached. In practice, templates are far less volatile than
data, but this could be done during development in order to have
the formatting update without having to perform the actions.
Add Cache-Control headers to static assets

Set to expire in 24 hours.
Log template loading

With templates being cached, it becomes more important to know when
a request forces a reload of the templates.