Assert that the video subsystem is initalized on config load/save

(Just to prevent future errors. We do keycode-to-string conversions in
there, and it's very tempting to move config file loading to an
earlier point in the startup phase, even before SDL_Init.)
Add language option
Fix double menu sound in some cases when entering text

(I don't hear it, but this should fix it.)
Rename fs_file struct to avoid namespace clash in C++ mode
Move several GUI helpers to common code
Add a language selection screen
Add native translations of all language names

Patch by @GunChleoc
Add a dummy en-US language file to force source language
Merge pull request #28 from parasti/language-screen

Language selection screen