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
The variable name `n` adds no value whatsoever.  

boost is hardly an example of readable code - indeed, it's often held up as an example of how _hard_ C++ code is to read.