Move config-related logic into separate namespace

Previously, this logic lived in the core namespace.
This is motivated by the desire to add better error
messages around missing config parameters.
Check for missing required params in migrate config
Merge pull request #20 from maxbrunsfeld/check-required-config-params

Add informative message for missing params in migrate-config