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.
I chose fetch because it matches the semantics of `git fetch` as this only grabs the data in this DAG and stores it locally, and doesnt update or return anything