sig
  type 'a t
  val make : '-> 'Scheduling.MVar.t
  val get : 'Scheduling.MVar.t -> 'a
  val set : 'Scheduling.MVar.t -> '-> unit
  val update : f:('-> 'a * 'b) -> 'Scheduling.MVar.t -> 'b
end