POM: pin to latest scijava-common: 2.28.0

This update is needed so that the DefaultLegacyHooks can inform the
SciJava UsageService of legacy plugin executions:

1) The forthcoming LegacyPlugInInfo (a bag of metadata about a legacy
   plugin) needs to implement new interfaces: Locatable and Versioned.

2) The DefaultLegacyHooks needs to call UsageService#increment.
IJ1Helper: add method to obtain IJ1's class loader
Register IJ1 plugin executions with usage service

To accomplish this, we wrap the IJ1 plugin metadata into a
LegacyPlugInInfo object, whose purpose is to provide callback
methods for the UsageService to call.
DefaultLegacyHooks: remove superfluous injection

Calling PluginService#createInstancesOfType already injects the
context into each instance, so there is no need to do it again.
DefaultLegacyHooks: obtain services lazily

The previous code was inconsistent about which services should be
obtained on demand from the context, versus being cached upfront during
installation of the hooks. For consistency, we now obtain all services
-- except the log service, since it is handled specially -- on demand
from the legacy service's linked context.
DefaultLegacyHooks: clean up style
DefaultLegacyHooks: clean up order of code blocks

See: http://imagej.net/Coding_style#Ordering_of_code_blocks
LegacyService: remove unneeded import
ImageJ2Options: add description of SCIFIO param
ImageJ2Options: use primitive boolean param

There is no reason to use the wrapped Boolean type, since the value
can never be null (nor would null signify anything in this case).
ImageJ2Options: use a better name for I/O option

Firstly, the option is not limited to SCIFIO. It actually toggles the
new-style ImageJ2 I/O, which includes but is not limited to SCIFIO.

Further, writing "isUse" rankles me. Yes, it is best practice for
boolean accessors to begin with "is", but that assumes the variable is
named in a nounish way rather than a verbish way. To do it 100%
correctly means choosing a variable name to which "is" can be prepended
sensibly (e.g., "scifioEnabled").
ImageJ2Options: remove unused & dangerous constant

String constants get inlined, which means that once a public one is
declared, for backwards compatibility, it should never be changed. But
we don't really want people using this constant to access the options
field by name anyway -- we have an accessor method for that. So let's
get rid of the constant before it does too much damage downstream.