implement StopReading / ResumeReading
simplify writing by not having a real write queue, use thread local direct buffers