change everything to return wchar_t pointers