Change os.Error convention:
echo back context of call in error if likely to be useful.

For example, if os.Open("/etc/passwd", os.O_RDONLY)
fails with syscall.EPERM, it returns as the os.Error

	&PathError{
		Op: "open",
		Path: "/etc/passwd"
		Error: os.EPERM
	}

which formats as

	open /etc/passwd: permission denied

Not converted:

	datafmt
	go/...
	google/...
	regexp
	tabwriter
	template

R=r
DELTA=1153  (561 added, 156 deleted, 436 changed)
OCL=30738
CL=30781
diff --git a/src/pkg/net/timeout_test.go b/src/pkg/net/timeout_test.go
index e08ce88..0aebce8 100644
--- a/src/pkg/net/timeout_test.go
+++ b/src/pkg/net/timeout_test.go
@@ -22,7 +22,7 @@
 	var b [100]byte;
 	n, err1 := fd.Read(&b);
 	t1 := time.Nanoseconds();
-	if n != 0 || err1 != os.EAGAIN {
+	if n != 0 || !isEAGAIN(err1) {
 		t.Errorf("fd.Read on %s %s did not return 0, EAGAIN: %v, %v", network, addr, n, err1);
 	}
 	if t1 - t0 < 0.5e8 || t1 - t0 > 1.5e8 {