two versions for single_reader_queue

this patch removes the mutex from `single_reader_queue` and instead
provides an explicit `blocking_single_reader_queue` class;
furthermore, both classes provide a `close` member function, enabling
actors to explicitly close the mailbox on shutdown