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