Implemenation of a Batcher API

This is a pass at flushing out an API and implemenation for #107.
This is an interesting pattern to starting multi-threaded producers. Like it