Minor tweaks for Client::disconnect

This simply updates `Client::disconnect` to use the `send()`/`flushSendQueue()` system. It also overloads it a few times for hopefully useful defaults.

Also -- completely unrelated and should probably be in its own PR but whatever :8ball:  -- it fixes `processMessage` being called when it really shouldn't.