sig
  type buffer = R.buffer
  val create_buffer : float -> Renderer.display -> buffer
  val begin_draw : buffer -> unit
  val end_draw : buffer -> unit
  val clear : buffer -> unit
  val event_queue : buffer -> Renderer.event list
  val width : buffer -> int
  val height : buffer -> int
  val render : buffer -> Shape.t -> unit
end