net: give better error messages

Add address and/or port to errors where applicable for better reporting.

See #7005
Yes. Here's an example:
```diff
diff --git a/lib/dns.js b/lib/dns.js
index 4eb34d6..4577397 100644
--- a/lib/dns.js
+++ b/lib/dns.js
@@ -29,12 +29,13 @@ var isIp = net.isIP;
 
 
 function errnoException(err, syscall, hostname) {
-  // FIXME(bnoordhuis) Remove this backwards compatibility shite and pass
-  // the true error to the user. ENOTFOUND is not even a proper POSIX error!
+  var errCode;
   if (err === uv.UV_EAI_MEMORY ||
       err === uv.UV_EAI_NODATA ||
       err === uv.UV_EAI_NONAME) {
-    err = 'ENOTFOUND';
+    errCode = 'ENOTFOUND';
+  } else {
+    errCode = err;
   }
   var ex = null;
   if (typeof err === 'string') {  // c-ares error code.
```
Doubt that is the fully correct solution, but I think that'll give you an idea.