Added Read/WriteSingle methods to BatchQ

The buffer based reads and writes exhibit terrible performance when
reading and writing single pointers. We have introduced a single
read/write method pairs which do not need the buffer.
Adding ExtQ

This queue does not actually manage, or even refernce, the
ringbuffer. It simply manages the safe access to indices into an
external ringbuffer. The reason that this is attractive is that it
allows us to use ringbuffers of concrete types, instead of interface{}
or unsafe.Pointer.