extend and cleanup use of closesocket()

- always call closesocket() before printing any text (ensure consistent
  usage in the code)
- remove redundant checks for INVALID_SOCKET before calling closesocket()
  as this case is always handled in closesocket() anyway (also the socket
  is set to state INVALID_SOCKET there)
- add missing closesocket() calls for BindListenPort()
- add missing vhListenSocket.clear() to ~CNetCleanup()

changes in ConnectSocketDirectly() unrelated to closesocket()
- replace 3 following calls to WSAGetLastError() by storing result into
  nErr and use this in an if-clause
- convert an if() to an else if(), which removes an unneded check if the
  first case is true
I think the goal should be to make closesocket() emulate the WIN32 closesocket on Linux, and don't redefine it when WIN32 at all. As we don't define the function on WIN32 anymore we can rename the function from `myclosesocket` to `closesocket`.

According to http://msdn.microsoft.com/en-us/library/windows/desktop/ms737582%28v=vs.85%29.aspx this behavior is to return WSAENOTSOCK when an invalid socket handle is passed. So we can keep the check for INVALID_SOCKET inside the function, to emulate that behavior on Linux.

Also removie the assignment of the output parameter `hSocket = INVALID_SOCKET` from the function - and make sure it happens everywhere where needed outside the function.