Better error messages when config/skylight.yml is invalid
Only freeze string values

Without this check we ended up doing things like freezing `nil`.This shouldn't
usually be a problem but old versions of rack-mini-profiler were assigning
instance variables to `nil`. As there is only one `nil` object used globally
and we had frozen it, this caused rack-mini-profiler to blow up.