Refactors send_request internals as discussed in issue tracker

In preparation of the streams/compression overhaul in needle.send_request, I figured it would be a good idea to get the test cases working.

Furthermore, I have made a pretty big overhaul of the send_request function, for the better. A lot of checks are gone and a lot of code is cleaned. Response#body is completely derived from the stream, so there will be no more inconsistencies between the streamed data and the body. 

In the future we might want to do a bit more validation of the proper workings of our stream. The `stream-spec` package tests v0.8 streams only. 

Proper tests have been added, for compression support too.