FileSys: Updates backend code to use FileSys::Path and adds proper support for binary filenames.

Updates our backend file system code to use the new Path class defined in #183 for file/directory paths. This allows the same code to be agnostic of different file path types supported by 3DS. Also adds proper support for binary filenames. Fixes #187.
Oh, dunno if I commented on the wrong part or if a subsequent patch moved my comment (I’d guess the later, since in the conversation tab it says line 32), but that line was copied as-is for the FS_User::OpenFile function.