Split control and display into separate programs.
Made echoing input a compile-time option.