Allow configuring putObject options when saving to S3

I needed this to be able to control `CacheControl` headers returned from S3 (it makes a lot of sense when you serve images from S3), but it can be used for setting other options as well (e.g. `ContentDisposition`)
Ok, I'll rename it to `put_options`. I kinda disliked `object_options` initially.

We can probably rename `url_options` to `get_options` as well, update the docs and just provide B/C so that `url_options` are just converted to `get_options`. It should be a separate PR though.