Use special type for VFS paths
Most of the openmw code uses std::string or std::string_view to pass VFS path around. The problem is that the path should be normalized and for a string it's not immediately clear if it is when reading the code. This leads to duplicate normalization because it's simpler to normalize than to figure out if it's required in each specific place.
!3781 (merged) added a new types VFS::Path::Normalized and VFS::Path::NormalizedView. We need gradually to start using them with end goal to not use VFS::Path::normalizeFilename* functions anywhere except these types. And in general if variable should contain normalized VFS path it should be one of the corresponding types and not be std::string*.