Optimize /repos page loading

* Use `/repos.json` to help browsers take advantage of ETag caching
* Include subscription relation for repos to fix N+1 query
* Add Rack::Deflater to compress potentially large responses
We're now "varying" by file extension, and not accept header.