Simplified the constructor.
Added optional support for error checking/termination.
Replaced Array by Rail.
Added support for error/termination checking in DoubleBuffer.
No longer use isAlive, but check for errors in the buffer instead.