I would put it the other way around. wpa_supplicant is actually very good at doing what it does. But rolling it's functionality into ifconfig is probably "good enough".
wpa_supplicant is an application of the "do one thing" philosophy. The kernel provides a some basic hardware-abstracted plumbing which lets a specialist tool do all the complicated handshaking and what-not for wireless.
This saves the basic tools (ifconfig, ip) from having to build in all that wireless complexity. But it does introduce an extra moving part that has to be configured. For this reason, just bloating it into the basic tool is likely to be good enough, and also provider a superior UX (for nerds like us).
wpa_supplicant is an application of the "do one thing" philosophy. The kernel provides a some basic hardware-abstracted plumbing which lets a specialist tool do all the complicated handshaking and what-not for wireless.
This saves the basic tools (ifconfig, ip) from having to build in all that wireless complexity. But it does introduce an extra moving part that has to be configured. For this reason, just bloating it into the basic tool is likely to be good enough, and also provider a superior UX (for nerds like us).