Fix streaming downloads

This makes streaming uploads and downloads work correctly in `ubic_file`. To view the `ubic_file` CT tests pass using this version, clone https://github.com/varnerac-ubnt/ubic_file/tree/experimental and `make test`

Do not merge https://github.com/varnerac-ubnt/ubic_file/tree/experimental into `ubic_file`. Once this PR is merged into `mini_s3`, we can generate a correct PR for `ubic_file` 
Why switch the guard from is_record to is_list? I don't see anything wrong with it, just curious