ScriptNamespace
com.jsmacrosce.jsmacros.core.library.ScriptNamespace
Gives scripts short names for Java types, such as EntityHelpers.Horse,
so scripts do not need to know where those classes live in the Java source.
Moving a Java class does not have to break scripts that use its short name.
Apply this to a class that lists the types to expose, with a public static final field holding each Java class. The annotation names the group, and each field names one type within it. Register that class with ScriptTypeRegistry to make the group available to scripts.