thread-safe conveyor belt for any data-structure

The Thread::Conveyor object is a thread-safe data structure that mimics the
behaviour of a conveyor belt. One or more worker threads can put boxes with
frozen values and references on one end of the belt to be taken off by one or
more worker threads on the other end of the belt to be thawed and returned.