Windows bug fix: Function CreateFile() requires an LPCWSTR string.

The Windows function CreateFile() requires an LPCWSTR string for the
filename. STL's std::string().c_str() returns a simple const char* and
so compilation fails (using Visual Studio 2012 Express at least).

Fix by defining a function for the conversion. This function was taken
literally from StackOverflow:
http://stackoverflow.com/questions/27220/how-to-convert-stdstring-to-lpcwstr-in-c-unicode