functor (X : sig val mem : string -> bool end->   sig     val make_unique_name : string -> string     val make : string -> Project_skeleton.t     val set_name : Project_skeleton.t -> string -> unit   end