IO::Tty modules. It will make creating an interactive window very easy. Now I just have to get a UML kernel working consistently.