add chunked encoding support; correctly handle no content len header

* we were assuming that there is nothing to read with no content len
header, but in fact that is a valid 1.1 state, in which case we must
read until the connection is closed. The problem is very ugly when
socket cache is used, because the next read will actually read a left
over data from the no-content-len request
dont use goto; add test for no-content-len
add a Trailer header exception, add a big header test case
actually read the trailer data, but ignore it (acceptable per http://tools.ietf.org/html/rfc2616#section-3.6.1)
Merge branch 'master' into chunked_and_no_content_len
minor touch to avoid autovivification
Revert "minor touch to avoid autovivification"

This reverts commit 7c40acad1aae91ab0f30be5e06468c4d01c0cc05.

Because the expression will not trigger autovivification.