[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 is a bit odd that you're testing url.GetShareName() here, but using url.GetHostName().  Is this correct - if so, comment as to why.