code: static Command parse(String s) {
          @Cleanup
          Scanner scanner = new Scanner(s);
          String component = scanner.findInLine(SCANNER_PATTERN);
          String command = scanner.findInLine(SCANNER_PATTERN);
          ArrayList<String> args = new ArrayList<>();
          String arg;
          while ((arg = scanner.findInLine(SCANNER_PATTERN)) != null) {
              args.add(arg);
          }
  
          return new Command(component, command, Collections.unmodifiableList(args));
      }
docs: Parses the given String into a Command, separating elements by spaces, and treating characters between double quotes(")
  as a single element. The first element is the Command Component, the second is the Command Name and the rest will
  be gathered as an ordered list of arguments.
  
  @param s The string to parse.
  @return A new instance of the Command class.