But some things are so widely used (md, intervalometer, USB remote) that they should be written in C and be present natively. Those with some special needs can still use LUA/Basic.
I completely agree those features should be standard and easy to use. That sounds to me like what you are actually asking for, and that's a matter of user interface, not what language they are implemented in.
With something like lua, you could make scripted stuff mingle seamlessly with the rest of the interface. From a development prospective, this has some attraction because it gives you modularity, a relatively easy path from user contributed script to official feature, and easy prototyping. On the down side, some things are less efficient. Loadable native binaries gives you similar functionality, but with a different set of pros and cons. IMO, both will eventually have their place.
If you are going to keep putting in every useful feature, modularity of some kind is going to be needed.