Improved settings loading code
Improved settings loading code

Settings code is now a lot more logical. Each setting is checked, loaded
and printed individually so if a specific setting key is missing it will
be added with a default value (which previously only happened if the
file was absent)

Basic interface functions for updating settings added. Will be expanded
on and used in scripts in the future.

Southclaws/ScavengeSurvive,Southclaws/ScavengeSurvive,Southclaws/ScavengeSurvive