Configuration is stored per type: system and local, and is always
merged into the "all" type which is only used for getting and not
setting.
Note that the Config class does not check if the provided directories
are valid or even exist. This class is only for holding configuration.