added basic GUI and threaded commanding