[build-environment-object] Build out an object representing the environment and replace all parsing code to use the new object.
Merge branch 'build-environment-object'