Track local file hash to see whether file has changed since the previous upload
Move hash caching to success branch only
Change write mode to force, because you do not want files to be duplicated
Make toolbox factory a bit more extensible by letting you to override the list of default providers
Add description for configuring cache options