Make IRCBotOutput less racist

Previously, a race condition existed where IRCBotOutput could miss the
notification provided by queueMessage if the notification was sent
after the size of each collection was checked, but before the intrinsic
lock of wait was obtained.

By moving the obtainment of the intrinsic lock to before the size check
for each collection, the aforementioned case can be avoided.  At the time
that a notification is sent, the thread created by IRCBotOutput is
guaranteed to be either waiting on wait, or handling a message that
was queued.  In either case, the thread will correctly react to the addition
of a new message into one of the queues.