Step1 gui base file
Feature: refactor/restructure of code, and addition of gui
Feature: gui modification
Merge branch 'gui'