fn read_input( queue: Sender<(String, Instant)>, cancelled: Arc<Mutex<HashSet<String>>>, out: Out, )
Reads the input until it closes: ping and cancellations at once, the rest onto the queue, each with when it came.
ping