Refactor client response

Now I'm refactoring around the client class and response. The purpose of the refactoring is to define new class which allows developers to access to each response directly. 

Although the pull request is still WIP, @kawahara please have a look. 

Thanks, :ramen: