Divide into service classes - issue #27

I know this is a very large pull request. Please do careful review and testing.

Here is a description of the refactorings and additions:
* Divide the previously huge `GitHub` class up into several service classes. API service calls now have
  the same structure as the GitHub API documentation (fixes issue #27).
* Remove reference to `GitHub` class inside model classes. Model classes are now just models and
  contain no functionality to call further API methods. Yes, it would be nice to navigate around models but
  this leads to a lot of redundant methods and because it was very different from the API documentation
  it was hard to find the needed methods.
* Added links to GitHub API documentation for every API method.
* Added TODOs for the missing API methods.