[WIP] make ASTs cachable

This AST is angular specific and should not be in the ChangeDetection library. Move to where ASTParser is.