I’d argue that implementing both TCP and IP from scratch is easier than implementing an HTTP library.
> Note, however, that Transport will automatically try to read a Response Body to EOF asynchronously up to a conservative limit when a Body is closed.
Similar wording appears in a few other places; search for “asynchronously”.