Raad,
I asked (kinda) this same question recently (https://openacs.org/forums/message-view?message_id=120936) hoping to generate a discussion of "whose 'extended user' package is the best?"
It is probably worth some effort. My feeling is that there are some packages out there somewhere. It appears that the OpenACS site is need of a package like this also (see Talli's comment in referenced thread). I think a flexible user-prefs package might be a quite large effort.
How is the user-prefs package you mention implemented? By extending the user-related tables or maybe it uses the attributes subsystem?
I am thinking that I'll probably just incorporate user prefs in my own application by extending the user table in the application's data model.
Randy