HRCPP-133 Modify retry handling in Socket::read

https://issues.jboss.org/browse/HRCPP-133

- Retry the read 10* times if the initial read sets errno to either
EAGAIN or EINTR (WSATRY_AGAIN or WSAEINTR on Windows)
- Throw an exception if n is 0 or less than 0 and errno is different or
all retries have happened
- Update the Windows version as well