!htp #16162 Upgrade server- and client-side HTTP APIs to "final style"

This PR clears #16162.
It currently builds on #16383, so ignore Björn's commit in your review.

As a temporary measure I have added a stub TCP API as described by #16166. This `TempTcp` stuff will go away when #16166 is cleared.
If we’re talking about TCP, the focus is on “how do I work with TCP streams in my application” and there the concept of Flows will need to be understood in any case. My favorite formulation is
~~~scala
val binding = StreamTcp().bind(interface = "localhost", port = 12345)
for (conn <- binding.connections) {
  (conn.flow <~> Flow.identity).run()
}
~~~
Especially for newcomers I find it distracting to show a simplified syntax that is limited to the most basic examples and does not scale up.