fix formatting and typos
add re-usable callback interfaces
associate requests with their response
add global request configurations that can be applied to every request automatically
adding support for automatic client redirect