Ambiguity support for simple rule ast.
Optimizing AmbiguousAst classes.
Split ListAst into several classes.
Refactoring recovery mode AST instantiation.