The original intention is to ease the development of modules, making them behave differently according to some *functional* options (or options values) the user passes in. It's only a means to an end. I guess what you're referring to is more explicit, exposing the profile concept to the end user (and maybe this was more the intention of XD-132 if I understand correctly now).

I guess there is room for both, but what is done here feels more natural IMO. Don't you think?