mapM -transformers +fgl

type NodeMapM a b g r = State (NodeMap a, g a b) r
fgl Data.Graph.Inductive.NodeMap
Graph construction monad; handles passing both the NodeMap and the Graph.