S3 backend enforces passing an ACL but this should be optional

had an unintentional side effect of blocking passing no ACL. S3 defaults to private ACL if no ACL is passed, this commit passes private ACL if it is unconfigured in rclone.conf.
This seems to be an issue for GCS when used in S3 compatibility mode with uniform access buckets. I suspect it may be a problem in the future with other S3 compatible backends as ACLs become deprecated.

Lot of logs and demonstrations of the issue in this post.

I think that removing the code that defaults a blank ACL to private is one potential work around.
e.g.

Potentially though a cleaner fix would be to not pass an empty ACL string to the backend if the ACL string is empty, but I'm sure of a clean way to accomplish this in the code.
An alternative would be a flag to enable/disable passing an ACL.