%no-whitepsace directive

This directive cancels the %whitespace directive, either globally, or
limited to a block.  The use case is a grammar which is almost
entirely whitespace insensitive, except for a few rules.  Such a
grammar can now be:

    %whitespace SPACE*

    # many whitespace insensitive rules

    %no-whitespace

    # a few whitepsace sensitive rules

Or, alternatively:

    %whitespace SPACE*

    # many whitespace insensitive rules

    %no-whitespace {
      # a whitespace sensitive rule
    }

    # more whitespace insensitive rules