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
Yes, there's an advantage. If you know ahead of time that you are preparing the last buffer, then the encoder can put the final-chunk together with the last buffer, versus having to prepare the output containing just the final-chunk.

But if you don't know ahead of time that you have the last chunk, there's a separate `complete` function for that purpose.