Integrate with Channels

I've re-worked some existing code in order to integrate with [Channels](https://github.com/rmsy/Channels). I've tested this code, and it works. The console is also supported.