Add documentation and tests demonstrating FIFO.  fixes #2