Faraday 0.9 compatibility

Works with Faraday 0.9. Still works with Faraday 0.7–0.8 as well. Check out the new build matrix, yo!

<img src="https://cloud.githubusercontent.com/assets/887/2727856/2efde2b4-c5e1-11e3-9bfa-a13e6315439f.png" height=600>

Kept the changes under `lib/` at a minimum, with the exception of RackCompatible middleware which needed to be overhauled since it's a horrible hack and non-horrible people should never ever use it.

I had to resort to the awful monkeypatch to provide backwards compatibility with the `preserve_raw` setting. I will investigate whether there's a saner way.

Obsoletes #74. This PR prolly still needs some middleware registration tweaks, though.

/cc @pengwynn @atmos @sferik @gottfrois @technoweenie