os: add LookupEnv, like Getenv but reports presence

Fixes #9676.

Change-Id: I32fe474cdfa09aff91daa4b10ac4df28ffdaa649
Reviewed-on: https://go-review.googlesource.com/9741
Reviewed-by: Ian Lance Taylor <iant@golang.org>
diff --git a/src/os/env_test.go b/src/os/env_test.go
index e618067..622f39c 100644
--- a/src/os/env_test.go
+++ b/src/os/env_test.go
@@ -94,3 +94,15 @@
 		t.Fatal("Unsetenv didn't clear TestUnsetenv")
 	}
 }
+
+func TestLookupEnv(t *testing.T) {
+	value, ok := LookupEnv("GOROOT") // Should be set.
+	if !ok {
+		t.Errorf("GOROOT is not set")
+	}
+	const v = "Variable That Does Not Exist"
+	value, ok = LookupEnv(v) // Should not be set.
+	if ok || value != "" {
+		t.Errorf("%s is set: %q", v, value)
+	}
+}