Clarify README, update tasks to be async.

The base option requires a trailing slash for getAssetKey to return the correct value (as written).  Alternately getAssetKey could be modified to remove the leading / from the adjusted path if present.

The upload and remove tasks need to use this.async() to work correctly.