Most of this is aimed at scripters, rather than the mirc development team.

Look at trillian... it is pretty well known just because it took a wild step and INTEGRATED multiple services.

mirc would need a lot of redesign if it were to take on IM. Most would be adding basic funcationality in areas like User Profiles (Address Book overhauls, see my feature suggestions here), plus extensions to DCC to incorp. voice messages and so forth. Before you flame, it's not very hard to record input as a .wav (ICQ style) and dcc send a file back and forth, nor is it very hard to stream it as it happens.
Other IM style features that I'd like to see is teh ability to trade 'contacts'; if you could swap address book info about a person, or notify lists, or -anything-. imagine some of the things thast could be done.
Scripts would be better at anti-spam stuff, by being able to transfer spam hostmasks between clients. A ripple like effect would go through the first X amount of ops/channels, and spammers would be auto shitlisted. (you timestamp it so if its more than 5 minutes old you discard it)
People would be able to find out information about someone BEFORE talking to them - if your best friend hates person X, you won't talk to them, but if they seem nice (or your friend's address book entries say that) you'll communicate.
I can't think of a third one so um yea
But there's a lot you could do if you merged the scripting language behind mirc with a flawless interface to other protocols.
IRC is about meeting people, IMing is about talking to the boring ones you already know.
Change the focus of mIRC from IRC client to communication client!
Script developers, go out and learn other better more structured languages apart from mirc script, then start bringing the habits and ideas back to mirc.