Improve error handling and error messaging

I'm thinking that we should probably just skip the protocol, and look for github.com/user/repo - anything before that isn't really relevant I guess. Thoughts?