improved irc framework