Recognize packages despite dash-vs-underscore fuzz

e.g. django-haystack vs django_haystack
Fix wrong URL when using simple.crate.io as source

Don't add `simple/` in path if `simple.` in domain name (assumes that
any PyPi mirror that has `simple.` in its domain name will not also have
`simple/` in its URL scheme).
Add handling of requests with version number
Fix bogus param 'package' looked for in upload

Made it  as the docs indicate.
Fix broken parsing of package name from filename

Was mistaking e.g. django-haystack-9.9.tar.gz for a django release as
opposed to a django-haystack release.