refactor/add curses support
refactor/add curses support