Runtime check mbstring.func_overload
Ratchet's mode of failure in the case that mbstring.func_overload is 7 (I only tested 7 and 0) on a run-time platform is inscrutable:

    HTTP/ 400 Invalid Sec-WebSocket-Key\r\n

#30 mentions checking mbstring.func_overload in unit tests but this isn't very useful for users of Ratchet. We don't usually run unit tests on dependencies in development and even less on platforms farther down the ops line. Each run-time environment has variables that even composer platform requirements cannot check.

Suggest adding a check for mbstring.func_overload != 0, perhaps in the WsServer constructor, and throw an exception, e.g. "Ratchet requires mbstring.func_overload=0"