Add a "game" variable to mod settings

This allows grouping mods together (e.g. fantasycore, alpha_demo, and
minicore are all part of flare-game).
Remove usage of the --game flag

Since games are determined via a mod setting, this flag is obsolete.
Allow mods to define a min/max engine versions for compatibility

In settings.txt, use lines like these (they're optional):

    version_min=0.19
    version_max=1.0
Don't install default mod in its own directory
Display more information in mod tooltips

Also, fix a bug with compareVersions()
Change game_prefix to save_prefix in misc.txt for clarity
Re-add .desktop file to distribution/
Remove TODOs related to settings parsing

- The types we use in the config entries is hard-coded, so the types
that tryParseValue() checks are sufficient
- An error message has been added for when there's an invalid key for
a setting
Fix potential memory leak when resizing images
Fix some static analysis bugs

- Add missing variables to init lists
- Prevent cases where divide-by-zero could happen
- Display errors for filesystem functions
Avoid using temporary string after deconstruction

This duplicates the window title string to a regular C string so that we
don't have to worry if SDL_CreateWindow() is allocating its own copy.
Merge pull request #1119 from dorkster/fixes

Fix some bugs discovered with Coverity
Merge pull request #1118 from dorkster/todo_fixes

Remove TODOs related to settings parsing
Merge pull request #1115 from dorkster/gameflag_refactor

Improve mod metadata; Remove --game command line flag
Merge remote-tracking branch 'upstream/master'