Rename imagej.ext.display to imagej.display

This is part of an effort to make the ImageJ package structure simpler
and easier to understand. The "imagej.ext" package hierarchy made sense
when the ImageJ extensibility framework was separated into its own
component (ij-ext), but now that it has merged with ij-core it is
confusing. It is also inconsistent which types of plugins were
subpackaged off of imagej.ext versus imagej (e.g., imagej.ext.display
for Displays versus imagej.platform for Platforms).
Rename imagej.ext.menu to imagej.menu

This is part of an effort to make the ImageJ package structure simpler
and easier to understand. The "imagej.ext" package hierarchy made sense
when the ImageJ extensibility framework was separated into its own
component (ij-ext), but now that it has merged with ij-core it is
confusing. It is also inconsistent which types of plugins were
subpackaged off of imagej.ext versus imagej (e.g., imagej.ext.display
for Displays versus imagej.platform for Platforms).
Rename imagej.ext.tool to imagej.tool

This is part of an effort to make the ImageJ package structure simpler
and easier to understand. The "imagej.ext" package hierarchy made sense
when the ImageJ extensibility framework was separated into its own
component (ij-ext), but now that it has merged with ij-core it is
confusing. It is also inconsistent which types of plugins were
subpackaged off of imagej.ext versus imagej (e.g., imagej.ext.display
for Displays versus imagej.platform for Platforms).
Fix some package names in comments
Rename imagej.ext.script to imagej.script

This is part of an effort to make the ImageJ package structure simpler
and easier to understand. The "imagej.ext" package hierarchy made sense
when the ImageJ extensibility framework was separated into its own
component (ij-ext), but now that it has merged with ij-core it is
confusing. It is also inconsistent which types of plugins were
subpackaged off of imagej.ext versus imagej (e.g., imagej.ext.display
for Displays versus imagej.platform for Platforms).
Rename imagej.ext.module to imagej.module

This is part of an effort to make the ImageJ package structure simpler
and easier to understand. The "imagej.ext" package hierarchy made sense
when the ImageJ extensibility framework as separated into its own
component (ij-ext), but now that it has merged with ij-core it is
confusing. It is also inconsistent which types of plugins were
subpackaged off of imagej.ext versus imagej (e.g., imagej.ext.display
for Displays versus imagej.platform for Platforms).
Migrate some imagej.ext classes to imagej.input

These classes are related to keyboard and mouse support, so fit nicely
into an input-related package. It also has some symmetry with, and
relation to, the imagej.display.event.input package.
Migrate imagej.ext classes to imagej base package

(We leave only InstantiableException, temporarily, to avoid an issue
with old versions of the ImageJ updater.)

This is part of an effort to make the ImageJ package structure simpler
and easier to understand. The "imagej.ext" package hierarchy made sense
when the ImageJ extensibility framework as separated into its own
component (ij-ext), but now that it has merged with ij-core it is
confusing. It is also inconsistent which types of plugins were
subpackaged off of imagej.ext versus imagej (e.g., imagej.ext.display
for Displays versus imagej.platform for Platforms).

In the case of the imagej.ext package itself (not its subpackages), the
classes there are used in various places throughout the ImageJ codebase,
and are generally well situated in the base imagej package itself.
AbstractInputHarvesterPlugin: move to imagej.widget

This plugin belongs with the rest of the InputHarvester code, in the
imagej.widget package.
Rename imagej.ext.plugin to imagej.plugin

This is part of an effort to make the ImageJ package structure simpler
and easier to understand. The "imagej.ext" package hierarchy made sense
when the ImageJ extensibility framework as separated into its own
component (ij-ext), but now that it has merged with ij-core it is
confusing. It is also inconsistent which types of plugins are
subpackaged off of imagej.ext versus imagej (e.g., imagej.ext.display
for Displays versus imagej.platform for Platforms).

Unfortunately, due to a limitation in the ImageJ updater (which is fixed
in recent versions), we must leave a few classes in imagej.ext.plugin
for now. Specifically, those classes on which the updater code depends
directly must stay in the same place, since old versions of the updater
do not update their dependencies when updating themselves. Hence, these
updaters would pull down a new ij-updater without pulling down the
corresponding new ij-core, thus breaking that system's installation.