Hopefully fix repeated GET problem

Previously, if we issued http GET more than once every 30 seconds, the second GET would timeout.  It seems this is because the code was using the same fixed port for src and dest - both were 80.  Probably this caused a problem if the second GET happened before the first had closed
Fix for "no free sockets" problem

My testing shows that the DNS query wasn't closing sockets, and they were remaining open indefinitely.  I've added a close(s) to fix this.
Fix for socket NONBLOCK not cleared

I found that if a socket was re-used, sometimes it would incorrectly have the wrong blocking status, because the socket creation code in socket() didn't clear the value
Merge pull request #369 from mgg1010/master

Various Wiznet Fixes