;; -----------------------------------------------------------------------------

PROJECT 2: writing a client and a driver to your specs 
	
 FILES

   client.rkt	: the client driver 
   graph-intf	: the interface for ... 
   graph.rkt	: the graph library 

   in*.xml	: additional test cases 
   out*.xml	: the corresponding results 
   
   -------------------------------------------------------

 TO RUN: for N in [0 .. 9]

   $ ./xrun 

   which basically runs 

   $ ./client.rkt < inN.xml | xdiff-xml outN.xml -

   on all test cases N: 

   ./client.rkt : consume series of GraphDescriptions from stdin
   		  produces series of results on stdout  

   ./xdiff-xml file1 file2 : consume two XML files and determine diffs 

 test cases: 
   in<n>.xml    : the XML input file for test case n 
   out<n>.xml   : the expected XML output file for in<n>.xml
 
   0 : create graph with single edge, probe edges as path 
   1 : create two graphs, join two graphs, check a path 
   2 : attempt to create graph that violates triangle inequality 
   3 : create graph, inquiry about non-existing path for existing nodes 
   4 : create graph, inquiry about path for non-existing nodes 
   5 : create graph with multiple edges, probe for path with two edges 
   6 : like 2, followed by query, which should give us a second error 
   7 : create one graph, 
       attempt to create graph that violates triangle inequality, symmetric to 2
       query first graph 
   8: another triangle failure 

