URI paths, queries, and fragments are all parsed, but don't have any
meaning yet, so they're treated as an error. I can imagine using this
for protocol-specific options though, e.g. ssh://host/?Compression=yes
* remote.cxx (class uri_decoder): New, breaks down a URI string.
(ssh_remote::ssh_remote): Add a constructor using a uri_decoder.
(remote::create): Redirect based on the scheme of URI-looking remote
targets. Assume all others are still plain [user@]host for ssh.