Imported some old SmallWM utility functions which the config parsers use.
Added a top-level configuration dispatcher.
This is the most abstract part of the machinery that does the configuration
loading. All of the concrete implementation will be done later.