Added GUI, finished most functions