Graph-Simple
============

See Graph::Simple under LIMITATIONS for some hot topics.

In addition:

Parser:

  * deal with " -> [ node ], [node2], [node3]"
  * parse nested graphs

Output:

* as_ascii(): output group borders and labels
* as_html(): output group labels
* support different shapes (circle, box, rounded etc)
* shorten HTML ("id" instead "class"?)
* "stretch" edges: after we know how wide a column is, we can go
  through all edges in that column and stretch them to fill the
  entire width
* add a class "link" to generated links (so they can be styled differently)

Layout:

* rewrite high-level code
* _trace_path() for bend edges (with one corner; and if X1 == X2 or
  Y1 == Y2, bend around two corners (U shaped))
* _trace_path(): use A* algorithmn as last resort to find path
* find place for nodes by walking in increasing circles around the source
  node
* make nodes occupy more than one cell (for making very wide/very high nodes
  fit better, as well as allowing more than 4 edges in/out of one node)

Misc:

* Add our format to Graph::ReadWrite
* Add as_svg()
* Finish graphviz output

