Make formatting consistent
Move github tests out on their own in prep for other services
Add github prefix in preparation for shortcut support for other hosts
Add bitbucket shortcuts
Add gitlab shortcuts
Add detection of shortcut git hosts
Make test output more useful
Add support for interpreting git and http urls as shortcuts

This is important because it lets callers bypass git for fetching information
about packages, thus substantially speeding things up.