akka-http-core: remaining functionality for M1

This PR contains all the remaining bits for M1 apart from the Java API (#15398) and the docs (#15397).
Once reviewed and merged we should finally be good for M1.

We have slightly reduced the scope of the client API for M1, right now only the lowest API-level is implemented (i.e. individual HTTP connections). We'd suggest to implement client-side connection pooling, redirection following and the like after M1 is released and the low-level bits have stabilized more.

/cc @jrudolph
I added it because without it all my tests were blowing up after adding the `test -> test` dependency.
@patriknw I'm not quite sure adding this `reference.conf` here is really robust. The "fix" works but might depend on the correct ordering of this `reference.conf` before the one from `akka-stream` on the test classpath, no?
In any case, I think it's a bit strange that the stream testkit requires me to override the mailbox-type setting.
Maybe the testkit is currently "leaking" something that it shouldn't?