code: static @Nonnull Set<? extends CliCommand> getAllHandlers() {
          Reflections reflections = new Reflections("com.github.olivergondza.dumpling");
          final Set<Class<? extends CliCommand>> types = reflections.getSubTypesOf(CliCommand.class);
  
          final Set<CliCommand> handlers = new HashSet<CliCommand>();
          for (Class<? extends CliCommand> type: types) {
              try {
  
                  handlers.add(type.newInstance());
              } catch (InstantiationException ex) {
  
                  AssertionError e = new AssertionError("Cli command " + type.getName() + " does not declare default contructor");
                  e.initCause(ex);
                  throw e;
              } catch (IllegalAccessException ex) {
  
                  AssertionError e = new AssertionError("Cli command " + type.getName() + " does not declare default contructor");
                  e.initCause(ex);
                  throw e;
              }
          }
  
          return handlers;
      }
docs: /*package