Store plClient password using platform-specific credential storage.

Add an abstracted password-storage system, and utilize it in plClient to replace the drive-based obfuscation.
Furthermore, casting UTF-16 to ```wchar_t``` is not correct.  It works for Windows, but other platforms may (and do) use 32-bit ```wchar_t```s