!htc #15716: Akka HTTP with the new DSL

/cc @jrudolph @sirthias 

TODO:
 - [X] Port http-core
 - [x] Port rest of http
 - ~~Port to the new IO abstraction~~
 - [x] get rid of unnecessary materializer parameters
My comment was more about the HTTP Java DSL, i.e. towards @sirthias and @jrudolph. To explain a little more: Scala has declaration-site variance annotations that are checked while compiling the type itself (like Source), while Java has use-site variance annotations that are not checked by the compiler (see the signature of `Publisher.subscribe()`). We should use whichever is appropriate when coding in either language.