move 3rd-party UIs to ui.rb