ij-legacy: register Help>Switch to Modern Mode only once

No need to register it every time we switch to legacy mode...

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
ij-legacy: Avoid running the (slow) option synchronizer

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Avoid loading the MacOSX platform prematurely

We need to make sure that the platform classes load, and even
instantiate, correctly before we can ask them whether they target the
current platform. Therefore, we need to avoid loading MacOSX-specific
classes, such as the com.eawt.* classes. Unfortunately, if we
enumerate the declared fields, and one of them is of a subclass of
a MacOSX-specific class, that class *will* be loaded.

To work around this, simply do not declare the ultimate type of the
MacOSX-specific event handler, and everything's groovy.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
ij-legacy: always apply the black list for legacy commands

We should not make the same mistake as Microsoft's Visual C++ compiler:
behave differently in debug vs non-debug mode, because that makes
debugging a real bummer.

This also has the side effect of accelerating the start-up time
substantially: we just shaved off another 150 milliseconds on this
developer's machine, which contributes to the speed-up for the final
goal of having a perceived quick start-up time of less than a second
for the ImageJ2 context.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Merge branch 'speed-up-context'

This manages to shave off another fifth second from the startup time,
to roughly one third over a second. Still not where this developer wants
things to be, but good enough for now.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>