Merge #29: Core of GUI app