fix Lua error when an axis binding is cleared in the settings screen
make KeyBindings::AxisBinding fields private
add an explicit (non-blank) string representation for disabled KeyBindings

This is necessary because blank config entries are treated as missing,
which means that if you clear the binding for an action, then the next
time the game config is loaded, that binding will reset to its default.
add support for disabling axis bindings
Merge remote-tracking branch 'jpab/issue-3083'