Use request QueryString to compose OAuth params

The Oauth "string to sign" includes the query string parameters,
together with the OAuth parameters. Guzzle uses a QueryString instance
to combine the two. However, it was incorrectly using the default
aggregator, instead of the actual aggregator used by the QueryString
that's part of the request.

This change uses the QueryString from the request to serialise the
parameters to be signed. This will affect the aggregation of the Oauth
parameters as well -- however aggregation should never occur for these
because there is only one value for each key.