add etag / last-modified support to remote_file