Suggested changes to refactoring Gerrit rest api

Related to issue #56

Work is still in progress but I wanted to share what I'm currently working on... I will continue to push related commits to this branch.

Commit 6eae48d:
It seemed to me that the class GerritRestClient had multiple purposes. I split the part that gives access to the rest endpoints into a separate class (GerritApiImpl) and left the part that provides http access to the rest interface in this class.

Something else I don't like as much, is how the different endpoints/clients have to access the Gson instance. I'm thinking about refactoring that as well.