Fix pointer corruption when using orphaned struct lists.
Fix file name extension for parser.c++.
Complete C++ .capnp parser.  Also, add a pretty-printing function for arbitrary Cap'n Proto objects which is like the existing stringification but uses whitespace (newlines an indentation) to make the structures more readable.