We may want to distinguish between version control (git, mercurial, svn...) and repo hosting (github, bitbucket...).
Even if we implement only git and github for now, the functionality each provides shouldn't be muddled up.