Could you explain what limitation you are referring to when you say that gettext is 'not usable for multiuser applications'? Since I'm not sure exactly what limitation you are referring to, I'm not sure whether my module addresses that limitation or not. I like to have my modules be pretty complete in terms of what they can do, so if there's a weakness in gettext that I'm not aware of, I'm possibly interested in addressing it.
For what it's worth, my module is very similar to Locale::Maketext in terms of how it's used in the program.
I've been calling my module Locale::Messages, but that name's already in use, so I'll be renaming it and releasing it shortly.