Bug fix - First argument should be service name

As defined in the TokenStorageInterface src/OAuth/Common/Storage
Readme update - Tumblr is OAuth 1.0

Tumblr is OAuth 1.0 https://github.com/Lusitanian/PHPoAuthLib/tree/master/src/OAuth/OAuth1/Service

Not found on the OAuth2 dir https://github.com/Lusitanian/PHPoAuthLib/tree/master/src/OAuth/OAuth2/Service
Removed deprecation warnings from foursquare

Foursquare requires you to pass a query variable `v=YYYYMMDD` that specifies the last date that your api implementation was checked against.
Add `Common\Http\Client\AbstractClient`.

`Common\Http\Client\StreamClient` should extend the new `AbstractClient`.
Remove `maxRedirects` and `timeout` from constructor and set default directly on class.
Add setters for `maxRedirects` and `timeout`.
Move `normalizeHeaders` to `AbstractClient`.
Add `Common\Http\Client\CurlClient`.
Add `ServiceFactory::setHttpClient()` class method.

 * Remove `ServiceFactory::__construct`. HTTP client should be set via
`setHttpClient`.
 * Remove `$httpClientMap` as it's not longer necessary. `setHttpClient` enforces
that the client implements ClientInterface via type hinting.
 * To maintain backwards compatibility, `ServiceFactory::createService` creates a
`Common\Http\Client\StreamClient` instance if no HTTP client has been set.

I'm not crazy about the backwards compatibility hack, but it keeps the library
functioning the way it did before while at the same time adding flexibility.
Add `CurlClient` to `HttpClientsTest`.
Add PUT request support to `Common\Http\Client\CurlClient`.
Add support for other HTTP methods in `CurlClient`.
Merge pull request #87 from thomaswelton/patch-1

Readme update - Tumblr is OAuth 1.0
Merge pull request #91 from flavioheleno/master

Dropbox service fix and Amazon/Dropbox/PayPal examples
Merge pull request #86 from thomaswelton/master

Bug fix - First argument should be service name
Merge pull request #89 from thomaswelton/patch-2

Fixed deprecation warnings from foursquare
Merge pull request #90 from popthestack/master

Add cURL HTTP client
Update README.md
allow any body type whilst retaining BC, closes issue #70
Update version suggestion
Fixes #92 check if array before using array_merge

Also updated the doc bloc to the $bodyParams param, and set a default value of null to better represent what may get passed in.
Bug fix incompatible declaration of request method

`$body` is now null, not an array.
This definition caused an error.

Declaration of OAuth\OAuth2\Service\Foursquare::request() must be compatible with that of OAuth\Common\Service\ServiceInterface::request()
Merge pull request #94 from thomaswelton/patch-2

Bug fix incompatible declaration of request method