Raw input bytes from the terminal.
Implementations must allow this stream to be listened to multiple times in sequence (one listener at a time), so several components can read input one after another.
Stream<List<int>> get input;