rose.config: load optional configurations

This change brings optional configurations to the core of `rose.config.ConfigLoader`.

This change should allow the immediate use case of #425 to be solved, which is to allow systems to separate configuration metadata in a modular way.

It looks like a large number of file changes, but most are just file renames.