def method_missing(name, *args)
      copy = self.dup
      copy.instance_eval { @args << [name, *(args.collect { |a| a.to_s })] }
      copy
    end
def method_missing(name, *args)
      copy = self.dup
      copy.instance_eval { @args << [name, *(args.collect { |a| a.to_s })] }
      copy
    end
Copies this CLI instance and appends another command line switch
 plus optional arguments.

 This method does not do any validation of the switch name; if
 you use an invalid one, HandBrakeCLI will fail when it is
 ultimately invoked.

 @return [CLI]