deleteNodeN :: Node -> GS ()
deleteNodeN n = do es <- getAllEdgesN n
                   foldl (>>) (return ()) $ map deleteEdge es
                   deleteNode' n
deleteNodeN :: Node -> GS ()
deleteNodeN n = do es <- getAllEdgesN n
                   foldl (>>) (return ()) $ map deleteEdge es
                   deleteNode' n
deleteNodeN n = do es <- getAllEdgesN n
                   foldl (>>) (return ()) $ map deleteEdge es
                   deleteNode' n