Performance optimizations and memory management

Added some benchmarks to secure channel and played around with improving its performance, also started using a sync.Pool for message buffers.
Yeah, Im not aware of too many cases where the channel will be closed before the context is cancelled, so that case is worth logging a warning for in my opinion