docs: public AppHelper setArguments(String[] args)
      {
          for(int i=0;i<args.length;i++)
          {
              if (args[i].equals("--help"))
              {
                  printUsage();
                  System.exit(0);
              }
              else
              {
                  boolean isValid = false;
                  for(Argument a : Arguments)
                  {
                      if (args[i].startsWith("--" + a.Name + "="))
                      {
                          a.Value = args[i].split("=")[1];
                          isValid = true;
                      }
                      else if (args[i].equals("--" + a.Name))
                      {
                          a.Value = args[++i];
                          isValid = true;
                      }
                  }
                  if (!isValid)
                      printErrorAndQuit("Invalid Parameter: " + args[i]);
              }
          }
          for(Argument a : Arguments)
          {
              if (a.Value == null)
              {
                  if (a.Optional)
                      a.Value = a.DefaultValue;
                  else
                      printErrorAndQuit("Missing Required Parameter: " + a.Name);
              }
          }
          return this;
      }