Some minor suggested clean up.

This commit takes dcsobral's suggestion of using named parameters for
AsyncParser's constructor. It also cleans up some other comments.
more clean up based on dcsobral's suggestions
Make jvalue header lenient if request body is empty.

HttpClientXLightWeb sends text/plain for the Content-Type header if the request
body is empty, even if some other content-type is specified. This changes the
jvalue combinator to be lenient with respect to content-type if the request
body is in fact empty.
Avoid recursively calling toString on nested JValues.

This commit fixes problems where logging frameworks, the REPL, etc.
could create massive strings representing gigantic JSON arrays.
After this change, only the top-level class will be printed, e.g.

  JArray(<12452 values>)

To generate an actual JSON string, use renderCompact (to minimize the
size of JSON produced), renderPretty (for whitespace and indentation),
or renderCanonical (like renderPretty but also sorts fields in JObject
to assist string equality testing).
Merge remote-tracking branch 'non/topic/single-value-async'