Refactored S3 using AWS library and update with new filer API

I think this might be wrong.  I seem to recall a time when we got burned by this, and utf8 strings having a different byte length vs. length (e.g., multi-byte chars).  I wonder if @Pomax or @jbuck remember what we did.