Pure OCaml implementation of the "vchan" shared-memory communication protocol