(maint) Allow for multidimensional hashes in yaml configs

This allows us to use multidimensional hashes in the yaml configs.

This will allow us to have conditional configuration based on the
build type (pe or FOSS), like mock and cow information. Currently
we have a flat data structure, config variables are set unconditionally,
if they exist, based on the load order of the configuration files - last
to load wins.

This pr sets a flag based on the build type and allows us to specify
different configuration sets based on that distinction, "pe" vs "pl".
but we don't make mistakes like that, ever! :)