!str #15564 Add stream supervisor

* this is the first step, to enable safe FlowMaterializer that can be shared
* had to remove Log because of missing context (we need another solution for log)
* naming of the actors have changed, should be revisited
Merge pull request #15701 from akka/wip-15564-stream-supervisor-patriknw

!str #15564 Add stream supervisor
!str #15551 Switch to implicit passing of FlowMaterializer

* implicit param
* change tests to use implicit materializer
* add ActorFlow trait that provides an implicit materializer inside an actor
  in the right way, i.e. encourage usage of that instead of
  implicit def mat(implicit arf: ActorRef): FlowMaterializer
* make http compile, but those who know the api better will have to adjust
  to take full advantage of the implicit materializer