`oneshot` returns `(ChanOne, PortOne)` while `stream` returns `(Port, Chan)`. I prefer the port to be first.