New GUI package
Merge origin/WithGUI into WithGUI