That's actually exactly what you can already do with cmail ;)
Each user can optionally be assigned a "user database", storing only the mails in her own inbox (which also allows users to have direct control over their own mail database).
If this is not used, mail is stored in the master database.
As you said, most normal deployments should not run into those limits, but its worth keeping them in mind.