!str #16066 rename connect to via/to

* add missing implicit conversions for ~>
* cleaned up implicit conversions for ~>
* tests for all combinations when using ~>

Refs #16066
yeah, that's pretty nice. With infix if you are into that:

    (Source(1 to 3) via flow to Sink(c1)).run()