added functional digraph digraph_functional.ml