Obviate the need for _flatten_param_dict by passing doseq=True to urlencode.

This has the added benefit of supporting query argument values that are tuples. Also support passing tuples for the `data` request argument.