upload: fix URI bug and always use new hackage URI
Previously, when uriPath was "", then the generated URI would be wrong. For example, if we have a remote repo with the URI http://hackage.haskell.org (without a trailing slash), then the previous code will generate http://hackage.haskell.orgupload for the upload URL. We now use the relativeTo function from Network.URI, which does the right thing. Additionaly, we now always rely on the new hackage URL layout. cabal now automatically upgrades the old URI to the new URI when parsing the config file, so manually checking for that is no longer needed.
Showing with 5 additions and 13 deletions