Due to the lack of thread safety with environment variables on Unix the values are cached in the CoreFX implementation.
This causes Path.GetTempPath() and anything else that tries to get an environment variable in CoreLib to not have the up-to-date values. See the failing tests in dotnet/corefx#13920.
We should move the implementation to Internal.Runtime.Augments so we have one source of truth.