Add JSON AST dumping

See the commits