`null` values *are* preferable to empty strings IMO, but this pull request aims to replace the current `Config` implementation with an easier-to-maintain one.

Changing from empty strings to null values could introduce other changes to the code in fields not related to the config class. I'll rather split these two concerns, and provide another pull requests for these.