Refactoring

* Refactor some of the url and request duplication in client.py
* Refactor the QueryString class into a function since it was a one-method class. Removed the "_string" name from the function - you could identify that it's a string if you needed to know that.
* Refactor away some of the mutable default argument handling.

Note: I haven't confirmed any of this actually works, just going by reading it. You'll probably want to grab this and run it locally or something first.