I agree about keeping the UI simple, and I've stated my design philosophy on multiple occasions: only add functionality if it fits within the existing UI and doesn't cause any existing UI behavior to change, and don't add modes that could cause existing behavior to change. I have made exceptions to these, like NSTK mode and BASE → MODES → WSIZE, but only if I find the use case very compelling and the potential for confusion is limited (which is a subjective judgment, to be sure).
I like the R47 / C47 because its designers don't constrain themselves the way I do, and are happy to add all kinds of functionality. It gives me something I can point people to when they ask me for features I don't want to implement. :-)
I'm not sure I understand your criticism of the solver, though. It seems rather elegant and effective to me, and I don't see how it could have been done significantly better.