Decide on what output formats we would like to support. Code to traverse the graph could be separate, and used by all formats.