Added Etag / hash comparison, optimistic locking algorithm