Fixed bug in generated regexes

Before, the generated regexes would only honor the start anchor on
the first entry of an OR chain. Now the entire regex is wrapped in
non-grouping parentheses like /^(?:regex)/ to be sure the anchor is
honored
Added in single-quote terminals for non-auto-whitespace-consuming
Added enum tags for each generated node class