Before this the Client.request method was able to corrupt the headers dict
passed by the user, since all complex objects are passed by reference.
Client: avoid header corruption
@hades @jaitaiwan and I just took over maintaining this and are trying to get things back up to snuff. Any chance you got a test for this in a fork somewhere?