hmm first attempt to make the gui more responsive with threads... tests broken. not sure