Factoring out "LGraph", a generic type for Labeled Ordered Digraphs

 * LGraph is really the place to put all "graph" related algos. This
   could be eventually replaced by something from jgrapht, but I guess
   it is too simple to bother