sesh
pub fn select<T, S>( rs: Vec<Recv<T, S>>) -> (Result<(T, S), Box<dyn Error>>, Vec<Recv<T, S>>) where T: Send, S: Session,