Improved configuration parsing

This change improves how configuration settings are parsed from JSON
configuration file (enforcing valid setting value types), making new
settings addition in the code much more manageable.