Refactored IconRepository

Reused code from similar methods to make more robust and easier to
manage and handled new source code arrangement for either Maven or
Eclipse builds. getClass().getClassLoader().getResource(...) when
running from a jar produced by maven requires a leading "/" while
eclipse does not.
Refactored jex.JEXperiment.main() to jex.Main.main()

This allows us to move the LegacyInjector.preinit() code to a class
that should be guaranteed not to load any IJ classes before calling
preinit() to ensure we can use both IJ and IJ2 classes.