Changed the interface to the API so that the functions that queue
messages to be sent to the IRC server do not return deferreds. The
deferred was trivially determined anyway because the writes are
performed without pushback.

Also added a function that allows the client to check for pushback
on the irc_writer value. Calling 'pushback' on an irc_writer value
returns a unit Deferred.t value that is determined when the irc_writer
is closed or the write buffer is empty (and ready for new values).