for your pleasure, now with nonblocking I/Ogit add irc.c