Rewrite grammar compiler so right-recursive rules can be compiled and parsing no longer fails when LazyReferences point to other LazyReferences. Fix #21 and #15.