config: Always check for valid function arguments at the start of each function
Some of the new and refactored config functions check if their arguments are NULL (or otherwise valid). Others don't.
We should consistently check for valid arguments at the start of every function. If there are any unusual validity conditions, we should explain them in a function comment.
If we skip validation, we should explain why in a comment, where we would usually do validation.
I'm also open to general exceptions. I'm not sure if we have coding standards here. But it would be nice to catch as many future bugs as we can, as early as we can.