Name the temporary file after the URL it was downloaded from.
Add Package#do_not_unzip! to skip unzipping step.
Refactor and bugfix package_downloads.

Moved a lot of stuff into their own methods.

Handled the case of a mod having non-URI-friendly characters in their name when
they were downlaoded from the cache.
Refactor package_downloads: move all methods into the eigenclass.
Merge pull request #371 from ucarion/no-unzip-package

No unzip package