Channels and goroutines

using channels + go routines. Need to look into how to manage shutdown but otherwise good
I'm ok with heads down camel case if we want to use it, my concern here is that the filename is now inconsistent.