make load_config return a cached object if called multiple times
only import ImmutableDict class from snakeoil
remove unused, old variable and config code
add portage-2 profile format support

The entire repoconfig usage should be reworked to use a mapping from
something like a multikey dict (with path and repo_id as keys and
RepoConfig objects as values) encapsulated by the global config object
so we aren't creating multiple copies of RepoConfig objects.