Mirror the SSH URL scheme and permit access to Git repositories by
just adding the project name to the server URL. This eliminates the
funny "/p/" prefix that used to be required for HTTP based Git
operations. URL dispatching happens on the suffix of the path, by
looking for the 3 magic Git names ("/info/refs", "/git-upload-pack",
"/git-receive-pack").
Continue to support the bare /p/NAME as a redirection to the project
open changes. Any name given by the user will now redirect, access
control checks will happen in the query and report "Not Found" in the
web UI if the user cannot see the project, or the project does not
exist. This removes any 403 Forbidden that used to be returned to a
client, which may be a change but I doubt anyone relies on this.
The old /p/ prefix is still supported for Git operations but we may
remove it in future releases since it does clutter up the URL space.
For now we support it by removing a single leading "/p/" just to keep
the code compatible with prior releases until users can migrate.
Change-Id: Ib9f558b3271a33c79be0cdb19ed12e5541f6a544