Implement S3ClientManager class.

Implemented an S3ClientManager class that acts a singleton.  This should
allows for more effecient memory usage when dealing with S3Client
objects across large model collections.
Merge branch 'development'