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