Renamed case-confused class names to be properly camelcase.
Yet again, OSX's case-insensitive file system bites me in the ass.
Fixed the caps in the old test script.
Added better explanations to the options on the settings page.
Fixed the configure link on the modules page.

It was pointing at the old URL, instead of admin/config/media/s3fs/settings.
BUGFIX: The Torrent feature is back… sort of. Also fixed the schema install.

Unfortunately, the new SDK does not appear to support torrent URLs like the
old one did. I ended up having to manually convert URLs from getObjectUrl()
to torrent URLs, which sadly does not work with pre-signed URLs. So I’ve
had to mark those two features as being incompatible with each other.

In addition, I discovered a rather annoying bug in the hook_schema()
function: it completely ignores the ‘collation’ setting. This meant that,
unbenounced to me until just recently, when s3fs_schema() created the
s3fs_file table, it created it with the default collation, instead of the
case-insensitive one I told it to use. Thus, I had to add a hook_install()
implementation to change the table over to ‘utf8_bin’ collation after it
gets created.
User aviindub has provided several fixes.

IAM Instance Pofile Credentials can now be used in place of setting the
awssdk2_secret_key and awssdk2_access_key variables.
The Metadata Refresh algorithm now uses a temp table.

Originally, the refresh algorithm deleted all the files in the metadata
cache, then rebuilt them by querying S3. Now it builds a temp table from
the S3 query, adds the folders from the original table, then swaps the temp
table into the real table’s place. This ensures that the metadata cache will
remain viable during the refresh process.

The error checking on the S3 File Systems Settings page has also been
improved. More potential error states are now covered, with more accurate
error messages.
Clarified a few comments.