final fix, FIXME: GUI threading collisions, need to do everything as JavaFX thread