[WIP] Enhancement: Added GitHub Repository Service

Added GithubService and moved controller methods to service
I think one of two things makes sense:

* catch the exception, but throw a different one
* let the exception bubble up