sig
  type t
  val noop : Unregister.t
  val create : (unit -> unit) -> Unregister.t
  val unregister : Unregister.t -> unit
end