Add http::chunked_encoder:

This transforms a ConstBufferSequence into a new ConstBufferSequence whose
data is encoded according to the Content transfer encoding rules of RFC2616.
The implementation does not copy any memory but also does not coalesce
buffers into larger ones if the input data is in small pieces.
Reviewers: @rec @donovanhide
Given the problems you have had with this code, and the possibilities of special cases, this code needs MUCH more testing.

What you really need is a way to create a _general_ test with a bunch of parameters that you can change and an expected output, and then call that general test in a bunch of different ways.