Write some explicit JSON code with introspection

Standoff annotation just prints JSON list of nodes.

Lots of repeated code.