Added ETag functionality & made cache_control optional