Making MergeAst a parser concern