Return error from `parse_header/1` through `body_length/1`.

When the `transfer-encoding` header is invalid (say, a `\r\n`) `{error, badarg}` is returned from `parse_header/1`. Before this possible error was not handled in the case clause and resulted in an error.

This commit adds a clause for this possible error case, and passes it on to the caller.