Added ThreadUtil to dump remaining non-daemon threads
Made channel.close() signal so that a strand that started a receive before close won't hang