Rework the user_groups system, again, into something that seems to actually