Lwt_queue, for blocking message passing

I had this piece of code in one of my repositories, and today I heard someone else complain that there lacks some way of communicating between long-running `Lwt` threads (unless I missed something). In case it might be useful, here is a very simple blocking queue (for mailboxes, message passing between threads...).

The semantics of `push` is that it might block if the queue has a limited capacity and is full.