unix: guarantee write queue cb execution order in streams

The problem is that currently the canceled write callbacks
are being called before the already written callbacks, even
though they were queued after them.
And it can't bail on the first try, unless your tcp send buffer is < 1024 and the receive buffer of the other side is as well.