Use ClientInterface instead of specific implementation

Code should rely on interface instead of specific implementations. This commit provide ability to replace "GuzzleHttp\Client" class implementation to different one (wrapped for example).

For example in case of extensions, which add context for matching responses of API, it is very usefull to just wrap "GuzzleHttp\Client" class and replace it in container.
Merge pull request #16 from fesor/use-client-interface

Use ClientInterface instead of specific implementation