Fixed a potential race condition in channel. As part of it, changed
low_level_queue to add an empty() method