curses-like interface that doesn't mess with scrolling