760 caching

closes #760 

if we want to add e-tag caching in the future it seems better the the reverse-proxy or server layer, the clj libs are out-of-date and something seems questionable about handling the hash generation in clj, https://github.com/mikejs/ring-etag-middleware/blob/master/src/ring/middleware/etag.clj

Of course an empirical test that shows this is fine and the cache boosts performance on average with no significant worst cases would convince me otherwise.

Merge after https://github.com/onaio/zebra/pull/797