Use Etag based on git commit to invalidate cache.

By only relying on `last_modified`, invalidating the browser cache would involve updating every Location on the API side, which is not ideal.

By adding the Etag to the mix, and setting it to the SHA-1 from the latest git commit, we can invalidate the browser cache by simply pushing new code to production (or even just manually setting the `ETAG_VERSION_ID` config var).