Rewrite of the client to use Guzzle

This PR completely rewrites the client to use the Guzzle HTTP Web Service Client. The API has somewhat been changed. Does will come soon.