Windows: Fix broken WDK compilation

* 790ffc78b008a03c95d10899f53997b504f55c72 moved the inclusion of poll_windows.h
  after the use of struct timeval, which removed the hidden winsock.h include
  where timeval is defined on the WDK.
* Make the winsock.h include explicit
Windows: Don't duplicate paths for HID interfaces

* This caused the many_device_lists to fail after 32 iterations
* Closes #69