Allow custom callbacks for client requests

This will allow us to pass custom callbacks to client responses. They're called with arguments that are the result of the client's default callback.
Sure, but then I'd just have to have a default callback lambda x: x. This is to make it explicit and kill the need for a default.