changed GenericsLib's ScriptApiRepo to non static class

InternalScriptApiRepo extends ScriptApiRepo and is accessed through a static getter: GenericsLib.getScriptApiRepo()

Makes it easier to learn the major points of the library by looking at GenericsLib while still allowing the repo instance to be reset and garbage collected on server reloads.