parse: temporarily pass the parser as an arg in the grammar
parse: remove no-longer-used r5js.parse.bnf.Rule.getNonterminalType+impls
parse: add strongly-typed alternation rules
parse: use strongly-typed alternation where possible