functor (S : Config->   sig     val log : ?fp:string -> string -> unit     val logf :       ?fp:string -> ('a, S.t BatIO.output, unit) Pervasives.format -> 'a     val fatal : ?fp:string -> string -> 'a     val fatalf :       ?fp:string -> ('a, S.t BatIO.output, unit) Pervasives.format -> 'a   end