I gave the main use for console commands in the menus, not all of them. I am aware the keybinds can not be changed through any other method, nor can video resolution, color depth, and several other properties. The same goes for disconnecting to the menu, it is almost always a console comand to disconnect from the match.
Your statement was inaccurate because you said that my implementation of StaticSaveConfig() would be incorrect, which it is not. If you will take a gander through the settings menus, you will see that they use StaticSaveConfig() always when they are trying to modify a script level variable without an actual reference to the object. SaveConfig() wont work without an object to call it on. You can do as you wish and check for a reference to it if you want, but then if you are able to access the menu midgame, you will be changing the GaolScore in the middle of the game, which is pretty silly if you ask me. Thats just a personal preference, but I dont think it's fair, and it might end up breaking things. Therefor, the best way to do it is to modify the default value for the class and StaticSaveConfig() so that from now on when the class is spawned it will have and load the correct value.
Most of the menus do have a temporary variable for each value, which is loaded when the menu opens and maintained until you close the menu some way. The menus are set up to allow an "Apply" button, but this was not kept for some reason, probably because it had to be pressed (in the implementation in the existing code) for each page before you switched tabs or the values would be lost. Therefor, when the menu is closed the temp values are saved, and not before then. Infact, SaveSettings() is called when the menu is closed, unless the menu was cancelled. Some variables, like resolution and others, are applied as soon as the option is changed in the menu.
But as I said, I am not sure what ClearConfig() does, except that it accepts a string for a variable name just like ResetConfig(), but I know that ResetConfig() resets the variable to the value given in the scripts, otherwise the "Defaults" button would not actually reset values to their defaults, but to the last saved value, which is just silly.