More documentation cleanup
Test case for put function
Add tests for when sending with chunked encoding
Implement chunked encoding when sending requests

Add field to Request type recording whether the entity body will be
empty, sent chunked or sent fixed length. Set appropriate defaults
depending on HTTP method including Transfer-Encoding header.

setContentLength takes care of clearing Transfer-Encoding if called.

Use Builder's chunkedTransferEncoding functions to do the actual
chunking.

Convenience functions no longer need to run the request body for size;
if the user sets a content length, fine, otherwise stream chunked.
Documentation cleanup
Merge branch 'chunked'