Write synchronously instead of using confirms

Previously I was using confirms to signal successful `_write`s. This
wasn't too bad for performance, since often confirms will acknowledge
many messages at once. However, it did pose a problem for setsockopt,
which is supposed to behave as though writes are synchronous: so, for
example, setting an expiry for one write then unsetting it applies the
expiry only to that write.

THe difficulty with just overriding `write` in the first place was
that amqplib had no (streams2) flow control. Newer amqplib has
per-channel flow control.
Tweak the easyamqp example