`variableSet.ScopeValues.Environments` gives you the set of all environments that exist in the source Octopus server. I think this could be a problem. Imagine this scenario:

Bill has an Octopus server with 50 environments. His Acme Website project only uses 5 of these. When he exports the project, and attempts to import the project into a second Octopus server, it complains that 45 of the environments not used by his project do not exist. 

Instead of checking that all values in `ScopeValues` exist, we want to check what values actually have variables defined that reference them (just 5 environments in the example above) and then ensure that just those exist.