While working on MDL-16824, I've noticed some ugly things in 2.0 messaging. Here it's the brief outline:
1) DB layer with some "strange" model out there (message_working, pointing to message table?)
2) Conflicts between different sending options, so if both email and messaging are selected, messaging never arrives
3) email notices and, perhaps, error.
4) BC compatibility of "receive settings" (MDL-18977)
5) Able to search against "all" users in site? Is that "safe" ?
...
Sure it's fixable. Perhaps it'd a good time to review the whole messaging thing a bit. Ciao