Can now update a repository without knowing its source control type (as long as it is git, mercurial, or subversion)