(feat) Wrapped http::Request and http::Response

!#[breaking change]

Request and Response are now iron-defined wrapper structs with ergonomic
fields and convenience methods that don't require mixins. This is a short-term
bug that will require changes but is a huge long-term win as it gives us total
control over our API and removes our direct dependency to rust-http.

Fixes #105
Fixes #94
Fixes #93
On second note, this is impossible, as you can't store an immutable borrow to the url field with no guarantee about how long the url field will last (it could be changed or dropped and replace at any time, making original_url a null pointer), so this can't be done.