Graph.Merge
module type S = sig ... end
module B : functor (X : Builder.S) -> sig ... end
module P : functor (G : Sig.P) -> sig ... end
module I : functor (G : Sig.I) -> sig ... end