You know, the more I think about it, the more I wonder if private messaging wouldn't be better under the core using a provider model. I could see where some may have other types of messaging they may want to integrate and with a good API, they could build providers for other services.
How hard would simple messaging be? You need the ability to:
- compose and send a message
- store the message
- list available messages
- reply (same as compose with a different heading)
- delete a message
Does not seem like much work. I am sure there are other things that could be added, but this basic system would work for most situations. The only other option I can think of that would be handy is some method of alert to let you know you have messages waiting. The list reading of messages could be integrated with the user settings page (when you click on your name when signed in).
The API would only need send, list, fetch, delete actions. Might have some option to flag if email notifcations are used.
If these features were provided in the core, the forums redirect a person to the compose area and be done with it.
Just some more thoughts about it.