LegacyOpener: Facilitate canceling

If the OpenFile command is canceled (e.g. by canceling the file chooser
dialog) then we will now return an object (Boolean.TRUE) indicating the
call was canceled. This should prevent duplicate dialogs from popping up
(once by IJ2, and then by IJ1).
LegacyImageMap: do not create a new ImageWindow

First, it is wrong to always create just an "ImageWindow". If we have a
hyperstack then we should be creating a "StackWindow".

Second, there are other things that happen in ImagePlus.show, for
example, regarding Window creation. It's possible that we want those
things to happen (e.g. when using the LegacyUI).

Third, creating this window actually prevents consumers (e.g.
LegacyImageDisplayViewer) from calling show(), because the ImagePlus
thinks it's visible already.

So let's just register the given display, and let consuming code decide
what needs to be done with the new ImagePlus.
Merge pull request #13 from imagej/dont-create-imagewindow

Removed code blocking ImagePlus.show from functioning after registering a Display.
Add LegacyInputHarvester

Needed a trivial LegacyInputHarvester. This can function the same as the
SwingInputHarvester (since IJ1 and thus the LegacyUI is effectively a
Swing UI). Just needed to tie it to the LegacyUI.
Update license copyright

Based on latest mvn license:update-file-header
Create ImageJ2Options class

This options plugin will be used to enable or disable IJ2 features in
the IJ1 gui.
LegacyInitializer: display UI

After initialization, we need to tell the IJ2 UI to display. If we're in
legacy mode, this will trigger the LegacyUI to "display" and
corresponding reactive events to trigger (such as displaying the Welcome
to IJ2 window).
DefaultLegacyOpener: respect useSCIFIO option

The useSCIFIO option will now turn the DefaultLegacyOpener on or off.
Add dependencies for text handlers

Adds the scijava text handlers (markup and plain text) as maven
dependencies.
Create a legacy text display viewer

Creates a new DisplayViewer for handling text in the LegacyUI. The
DisplayWindow framework is bypassed, rendering text via IJ.showMessage.
ImageJ2Options: add getter

Added a public isUseSCIFIO accessor.
DefaultLegacyOpener: simplify isUseSCIFIO logic

Updated to use the API recommended by Curtis Rueden.
Remove unnecessary persist=false

Service @Parameters do not need to be labeled persist = false in
OptionsPlugins.
ImageJ2Options: update plugin type

Annotated as a LegacyCompatibleCommand, this plugin wasn't being
discovered as an OptionsPlugin. By annotating on the concrete type, it's
now discovered as both.
Factor out LegacyCompatibleOptions

Instead of typing ImageJ2Options on its own concrete class, we should
have a superclass that is both an OptionsPlugin and a
LegacyCompatibleCommand.