Create concurrent package and move stuff with has no dependencies on transport to it
Rename ChannelTaskScheduler to TaskScheduler as it is not specifc to Channel