http2: add ConfigureTransport, like ConfigureServer

To make an net/http.Transport (http1) be HTTP2-ified.

Move this code out of net/http internals, so others can use it.
And add tests.

Some reflection and +build tag work is required so it is a no-op and
returns an error for Go 1.5 and below.

Change-Id: I539f233509602009e6c1179b810ff509a1f83ae3
Reviewed-on: https://go-review.googlesource.com/16734
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
4 files changed