Add to-string() to ParserNode, which is a terse representation of the node itself, but not a direct source representation. Fixes #108