misc improvements, added etag support