Flatten dicts and lists to PHP-readable POST fields

This bit me today, trying to do a `client.service_update(service_id=1, options={2: 3})`. Where it should be sending "options[2]=3", it instead sends "options={2:3}". Here's a fix!