OFStreamObserver improvements.

* Make it possible to close a stream before the add/remove queue has
  been processed.
* The actual implementations don't need to handle OFStreams now, but
  get the file descriptor instead.
* Use an OFMutex instead of @synchronized.