implements commonly used traversal orders on graphs
topological sort implementation
symbol digraph implementation
don't return a null cycle.
fix up error message in case of cycles in digraph
test client for digraph topological ordering