hasBody() should return false if Content-Length: 0

Some clients will set Content-Length: 0 when there is no content (and shouldn't be, e.g. on a GET). This can cause other parts of connect to be confused. For instance, if the client also sets Content-Type: application/json, the json middleware will try to parse an empty string and blow up.

Of course, such clients are unhelpful at best, but connect should not blow up.