Rails caching optimizations

I noticed that our user header was getting a bit slow and taking up most of the processing time on our backend, so I did an optimization pass taking advantage of some Rails caching features:

* Cache user_stats partial view with Rails fragment cache.
* Optimize ReportsController#header_stats with etag/last_modified support.
* Optimize query-heavy ScriptLevel methods using Rails cache.
* Set max-age to 1 year for static assets cache control - with fingerprinting (assets.digest) enabled, cached assets will never be stale.