CLog update

* Fix some mess in CLog
* Rework win32 part to work directly with win32 File API instead of some strange `_utf8` wrappers
* Move adb printing to the right place
* Add LogW() for wide string logging (mostly for win32)
* Add LogFunctions/LogFunctionsW and companion macros LogF/LogFW for quick logging with function name: instead of 
```` C++
CLog::Log(LOGDEBUG, "%s: Return code: %i", __FUNCTION__, ret);
````
use
```` C++
CLog::LogF(LOGDEBUG, "Return code: %i", ret);
````
 this will put exactly the same string to the log.
* Added parameter checking for MSVC
* Removed CStdString

This will slow down execution as pointer will require additional null-checking. 
And null-checking will increase number of lines and code complexity.
By using typedef, I allow to C++ do all this things automatically.