Refactored the package versioning and exposed a version API.

We now have an API that lists known versions for packages that use the
gophe.rs packaging system.

There is now an interface for external sources that allows for other
public repos to be used. Git is currently implemented for github and
bitbucket.