Update (2008/12/08): With the pipe-notification
Pidgin plugin, the example script provided with it and a little modification to
your status script, it's possible to have notification on new messages. See
conky-bar for an
example - the first command simply calls the pipe-notification example script.
Update 2 (2009/01/16): It can actually be even simpler than that. One of
the plugins included with Pidgin, Message Notification, has an option for
setting the urgent flag on windows with new messages. You can make XMonad
highlight the names of workspaces with urgent windows (see my
xmonad.hs). Tada - message notification.
Update 3 (2009/03/04): Actually, the above links were dead. You can now find all my dotfiles in a GitHub repo.
I gave up trying to bend WMII to work the way I wanted it, and gave XMonad a try. After the initial difficulties with Haskell, it feels like a grown-up WMII (XMonad is written in Haskell, a functional language). It first seemed strange to have.. well, anything useful written in a functional language (no offense, I just haven't encountered any such)... But it does work, and quite well at that.
If interested, you can check out the current state of my xmonad.hs at dotfiles.org GitHub. Once it's about done, I'll probably send it/upload it/whatever to the XMonad community configs. It started out as a modification on And1's config, but most of it has been replaced/rewritten.
Some details, in case you're interested: I use dzen2 bars for status information and the like, which means the limitations of the (only one) WMII status-bar are gone. I kept all nine workspaces, and use ones tagged www (with M-w), mail (M-e) and im (M-i) with rules for moving the appropriate windows there when opened. There are some key-bindings in there for controlling mpd through mpc (next song, previous song, toggle pause/play and a big dzen bar for the current song, shown for just a second).
<Subjective, no flames please>
XMonad feels a bit alien at first, but it's really a bit like the switch from
Ubuntu to Arch Linux: you can do everything with either one, but one (Arch, and
XMonad) is just made to be customized.
</Subjective, no flames please>
It also isn't the 'build everything yourself' kind of customization: there are numerous, complete configurations published you can use as a starting point. The documentation of the config system is very well written, and easy to use even without prior knowledge of Haskell (I speak from experience).
All in all, I like it.