[win32] Implement new Win32SMBDirectory

Reimplementation of SMB Directory for win32
Based on new Win32Directory, with same basic features, like hiding elements starting from dot.
Additionally:
* Added a lot of error checks and reporting, 
* Fixes of using UTF-8 strings as win32 ANSI strings, 
* Implemented enumeration of hidden shares, 
* Better deal with authentification
* Properly call win32 network funtions
It seems odd that you need to cast NULL to a struct* ?