hook up the new-ui settings view as a UIView for use in-game

(as opposed to use from the main menu)
delete GameMenuView and FileSelectorWidget, which are no longer used
remove the VSync checkbox (vsync setting isn't used by graphics init code)
fix the key binding list so it is always displayed in the same order

The order of Lua table string keys varies from run to run, because Lua
applies randomisation to its hash function (probably to try to mitigate
against performance attacks based on giving many keys that all hash to
the same value). Even if the order was consistent from run to run, it's
not good to use it because it still isn't controllable.
implement Engine.SetKeyBinding
create a stub button to change key bindings in the settings screen
use a SmallLabeledButton for the 'Set' button to change key bindings