(And a missing string conversion for getenv on Win32, too.)
These new string conversion wrappers convert between std::string (of UTF-8 bytes) and std::wstring, which is particularly useful for Win32 interop.
The motivation behind this is to support a patch I'm preparing for LLDB (the first version of which is at D17107) that makes heavy use of these helper functions for better Unicode support on Windows.
& and * bind to the identifier instead of the type in our coding conventions (here and elsewhere). Run the patch through clang-format and it should fix all of those up automatically, as well as other formatting issues in the patch.