def method_missing(method, *arguments, &block)
      super if @finalized
      if arguments.length == 1 && arguments.first.is_a?(Directive)
        arguments.first.add_modifier Modifier.new(method)
      else
        (directives.push Directive.new(method)).last
      end
    end
def method_missing(method, *arguments, &block)
      super if @finalized
      if arguments.length == 1 && arguments.first.is_a?(Directive)
        arguments.first.add_modifier Modifier.new(method)
      else
        (directives.push Directive.new(method)).last
      end
    end
Creates a new directive with the given method and arguments.

 @return [Directive] the new directive.