#MPSC Queue
Single-consumer multi-producer concurrent queue
##Requirements:
- FIFO(ish) queue
- Flexible runtime size
- Accept data from multiple producers (ideally via moving vs. copying) performantly. It doesn't matter if items that are added around the same time are in a strict FIFO but it should trend towards fifo over longer periods.
- Single consumer only. Ideally should block until data available. Should be able to retrieve data via move operation rather than copying. Performance for consumption not critical.
- Modern C++ (move semantics)
- Ideally header only
##Nice to have
- Header-only
- Lock free or at least relatively fast for producers. Enqueue shouldn't take a whole lot longer than it takes to execute the move operation for the payload.
- Consumer performance not nearly as critical.