We've accumulated a lot of cases that are likely to break: 1. Async output (use the `async` command in readline-demo) 2. #38 3. (Windows special cases?)