[runtime] Rewrite MemoryMappedFile to support named mappings.
[runtime] Fix share/private flags when doing file mmap.
[System.Core] Add new tests for MemoryMappedFile.
[runtime] Add a workaround to file-mmap-posix.c to fix the android build.
Silence a warning in file-mmap-posix.c.
[runtime] Don't perform double accounting of offset for named memory segments. Fixes #20591
[runtime] Define DEFFILEMODE to 0666 if not defined.
[runtime] Make it possible to create views to magic zero size files such as /dev/zero. Fixes #19460
[runtime] Fix error handling with named memory regions.
[runtime] Rework named mapping to use an unlinked file to provide correct mapping semantics.

Instead of using mono_valloc we create a temp file and unlink it. With this we can have the right
mmap semantics regarding CoW and access rights.

This does simplify the code too by completely removing the mapping kind.
Silence a warning in file-mmap-posix.c.
Added file-mmap-windows.c to libmonoruntime.vcxproj