pub type TextInput = BufReader<Box<dyn Read + Send>>;
Sequential reads over anything, buffered. Named so the converters do not spell the generic out.
pub struct TextInput { /* private fields */ }