Fixes issue with setting admin_pass password

The password was not properly set with metadata services
beside HTTP
Replace WMI class with Win32 APIs for routing

Useful for using the HTTP metadata service during
specialize on boot after Sysprep
Improves metadata exception logging
Implements Windows OS version check with Win32 API

The goal is to support execution during serialize
after Sysprep where WMI is not available
Fixes bug in SetUserPassword plugin return value