avoid windows.h include problems

* windows.h includes winsock.h which causes conflicts with winsock2
* windows.h includes windef.h which defines min/max macros that conflict with STL