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.
these functions should probably be symmetric. i.e. give them both keys + params