Add panic mode, change directive behavior

Panic mode for the ruby parser; if it encounters a token that it
cannot handle, and both the directives `panic-mode` and
`ruby.error-class` were defined, the parser is able to enter panic
mode and attempt recovery.  If only `ruby.error-class` is defined,
it raises the class given by that directive.  Otherwise, it calls the
method `handle_error`.

Directives are set up so that they _must_ be allowed by any of the
generators; otherwise, the compiler will error.  This is to help the
developer by preventing typos that would otherwise cause unintended
behavior.

Blocks in the scanner now check for lexigraphical context; if a brace
is found within a string, it is ignored; if it's found in a comment,
it's ignored.