1f951217

By: Michael Lynch <git@mtlynch.io>

Cache embedded static assets for 30 minutes

Add Cache-Control and ETag headers to embedded static asset responses so
browsers can keep assets fresh for 30 minutes and revalidate efficiently
with 304 Not Modified responses after that.

This keeps the change localized to the static file handler instead of
threading asset versioning through templates and routes.