docs: public static void main(String[] args) throws IOException {
      if (args.length == 0) {
        System.err.println("java Morphology [-rebuildVerbTable file|-stem word+|file+]");
      } else if (args.length == 2 && args[0].equals("-rebuildVerbTable")) {
        String verbs = IOUtils.slurpFile(args[1]);
        String[] words = verbs.split("\\s+");
        System.out.print(" private static final String[] verbStems = { ");
        for (int i = 0; i < words.length; i++) {
          System.out.print("\"" + words[i] + "\"");
          if (i != words.length - 1) {
            System.out.print(", ");
            if (i % 5 == 0) {
              System.out.println();
              System.out.print("    ");
            }
          }
        }
        System.out.println(" };");
      } else if (args[0].equals("-stem")) {
        for (int i = 1; i < args.length; i++) {
          System.out.println(args[i] + " --> " + stemStatic(WordTag.valueOf(args[i], "_")));
        }
      } else {
        int flags = 0;
        for (String arg :  args) {
          if (arg.charAt(0) == '-') {
            try {
              flags = Integer.parseInt(arg.substring(1));
            } catch (NumberFormatException nfe) {
              System.err.println("Couldn't handle flag: " + arg + "\n");
              // ignore flag
            }
          } else {
            Morphology morph = new Morphology(new FileReader(arg), flags);
            for (Word next; (next = morph.next()) != null; ) {
              System.out.print(next);
            }
          }
        }
      }
    }