Moving adapter module load to main thread to avoid Python threading issues
Refactoring clean command, adding convenience functions
Error handling for exceptions thrown during communicator construction
Improving S3 adapter

 - Creating tempfile in same directory as destination to ensure rename works as expected
 - Adding hash validation and retry to detect corrupt objects
 - Fixing some Windows-specific issues
Adding purge option to remove missing files on add
Deep copying config to avoid threading issues
Updating README
Fixing path issue with 'cache info' command