finished GUI, fixed GUI,threads,design patterns