[FINAL] Validating hash when downloading/extracting bundles.

An attempt to validate bundle hashes as they come in the door.  I was able to sha1 hash the file contents as they stream in, avoiding secondary passes over the file contents.

This is a follow on attempt to #32
For `getLocalTemporaryBundleFolder` we have the bundle, flavor and version to make the temporary download folder name unique.  For the regular download all we have is the unique filename.  Thus, we needed a specific method to create a folder for the regular download.