net/http: verify RoundTripper invariants in the send function
net/http: verify RoundTripper invariants in the send function

Issue #37598 reports a nil-panic in *Client.send that can
only occur if one of the RoundTripper invariants is violated.
Unfortunately, that condition is currently difficult to diagnose: it
manifests as a panic during a Response field access, rather than
something the user can easily associate with an specific erroneous
RoundTripper implementation.

No test because the new code paths are supposed to be unreachable.

Updates #37598

Change-Id: If0451e9c6431f6fab7137de43727297a80def05b
Reviewed-on: https://go-review.googlesource.com/c/go/+/221818
Reviewed-by: Brad Fitzpatrick <ae9783c0b0efc69cd85ab025ddd17aa44cdc4aa5@golang.org>

CAFxX/go,nawawi/go,akutz/go,cloudflare/go,nawawi/go,golang/go,cloudflare/go,golang/go,akutz/go,golang/go,golang/go,CAFxX/go,nawawi/go,cloudflare/go,CAFxX/go,CAFxX/go,akutz/go,CAFxX/go,nawawi/go,nawawi/go,CAFxX/go,golang/go,cloudflare/go,akutz/go,akutz/go,cloudflare/go,akutz/go,cloudflare/go,nawawi/go,CAFxX/go,golang/go,CAFxX/go,cloudflare/go,cloudflare/go,nawawi/go,golang/go,akutz/go,nawawi/go,golang/go,akutz/go