AbstractInputHarvesterPlugin: harvest when visible

Previously, each input harvester would run only if its UI was the
default, regardless of whether that UI was actually being shown.
Unfortunately, this caused the Swing UI's input harvester to pop up even
without the Swing UI activated.

The new strategy is to show each input harvester if its associated UI is
visible/active. This will result in multiple harvester dialogs popping
when multiple simultaneous UIs are active, which is something that needs
further thought. However, this behavior should be an improvement over
the previous one for the more common situation of headless execution.