docs: public static void main(String[] args) {
      if(args.length > 0 && args[0].charAt(0) != '-') {
        Class<?> cls = ELKIServiceRegistry.findImplementation(AbstractApplication.class, args[0]);
        if(cls != null) {
          try {
            Method m = cls.getMethod("main", String[].class);
            Object a = Arrays.copyOfRange(args, 1, args.length);
            m.invoke(null, a);
          }
          catch(InvocationTargetException e) {
            LoggingUtil.exception(e.getCause());
          }
          catch(Exception e) {
            LoggingUtil.exception(e);
          }
          return;
        }
      }
      try {
        Method m = DEFAULT_APPLICATION.getMethod("main", String[].class);
        m.invoke(null, (Object) args);
      }
      catch(Exception e) {
        LoggingUtil.exception(e);
      }
    }