Working ETag implementation (caching is hard)