UI rehaul, fixes #16