added GUIRunner and utility functions