Async Channels for Swift concurrency

there are some noticeable problems with binary size when using swift-async-algorithms, so i can certainly see plenty of room for alternatives.

eventually though, my preference would be for these optimized implementations to get upstreamed to swift-async-algorithms, assuming its maintainers are open to that.