People pointed out on my article on multiplexing, reinventing the wheel tends to be a waste of team. I don't really agree (you get to learn how wheels are made), but they do have a point. The point being that you'll get ahead a lot faster if you use an existing implementation.
So I (temporarily) stopped using my multiplexing code and switched to multiple connections as in http. This let me concentrate on the imporant parts and not get stuck with bugs in the mux code, Once I'm done I'll switch back to my code or BXXP if it's ready.