code: public final void addArgument(final SgArgument arg) {
          if (arg == null) {
              throw new IllegalArgumentException("The argument 'arg' cannot be null!");
          }
          if (arg.getOwner() != this) {
              throw new IllegalArgumentException("The owner of 'arg' is different from 'this'!");
          }
          if (!arguments.contains(arg)) {
              arguments.add(arg);
          }
      }
docs: Adds an argument to the list. Does nothing if the argument is already in
  the list of arguments. You will never need to use this method in your
  code! An argument is added automatically to the owning behavior when it's
  constructed!
  
  @param arg
  Argument to add - Non null.