Menuconfig Implementation and auto-qemu refactoring (#44)
* unify the chardev backend definitions
* add --dry option for dry-running
* allow supply extra raw qemu options
* implement ncurses based tui framework
* basic lunamenu framework built on top libtui
* (libtui) add scrollable, list, textbox
* (menu) add listview, dialogue
* interface LunaConfig into menuconfig
* remove flickering when new context being added and redrawn
* add ability to navigate, edit the config node
* adjust the layout parameters
* some refactors
* add help dialogue
* layout refinement
* add <BACKSPACE> as hot key to navigate up level
* add confirmation dialogue for exiting
* refactors
* add user friendly alias to LConfig terms
* fix the focusing problem with textbox
* bypass the configuration for user program generation
* bypass the showing of config view during usr program generation, use
default value instead
* house keeping stuff
* add terminal dimension check and fallback to prompt based
* replenish the help messages
* fix: udiv64 is not used when doing u64 division
20 files changed: