GUI added, threading implemented