When you change wined3d_settings, you should make sure that you update the defaults in wined3d_main.c as well. I know those are currently mismatched, but I've got a patch to clean it up. I'm currently waiting for Alexandre to apply/reject some of the wined3d patches sent over the past couple days before sending it (and some other patches).
Hmm... yes that is broken - RTL_AUTO will not take effect. I guess it broke all the way back when vs_selected, ps_selected things were added (probably my fault as well). Other things seem to have been added afterwards as well. This patch doesn't make it any more or less broken, however.
The reason I forget about defaults, is that I don't need them - this value is always initialized at runtime. We should also use C99 initializers.
I'm not sure if using wined3d_settings is really the right place to store things that don't have a corresponding registry key, but it seems like the best place for now.
Not sure, but eventually it needs to be made per GPU, just like shader capabilities. I added it there, because the other "selected" values were there...
I think your concerns about (ab)-use of wined3d_settings are valid, but better addressed in a followup patch. This one's goal is to break up ActiveRender, and I think it achieves its purpose for the most part - existing patterns were followed for everything else [ it never occurred to me to add the setting anywhere else, since that decision was already made for ps/vs mode selection].