Refactor S3 authentication
- Add a custom implementation of the SHA256 HMAC (works on all systems).
- Add unit tests for SHA-1 and SHA-256.
- Rename the configuration parameter from
S3_V2_SIGNATURE
(bool) toS3_SIGNATURE_VERSION
(int). - Add
s3_signature_version
as a supported JSON configuration parameter.