Fix #11939. Set st_dev attribute on Windows to simplify os.path.samefile.

By setting the st_dev attribute, we can then remove some Windows-specific
code and move os.path.samefile/sameopenfile/samestat to Lib/genericpath.py
so all platforms share the same implementation.
diff --git a/Doc/library/os.path.rst b/Doc/library/os.path.rst
index d9b7138..d1725bd 100644
--- a/Doc/library/os.path.rst
+++ b/Doc/library/os.path.rst
@@ -244,15 +244,14 @@
    On Unix, this is determined by the device number and i-node number and raises an
    exception if a :func:`os.stat` call on either pathname fails.
 
-   On Windows, two files are the same if they resolve to the same final path
-   name using the Windows API call GetFinalPathNameByHandle. This function
-   raises an exception if handles cannot be obtained to either file.
-
    Availability: Unix, Windows.
 
    .. versionchanged:: 3.2
       Added Windows support.
 
+   .. versionchanged:: 3.4
+      Windows now uses the same implementation as all other platforms.
+
 
 .. function:: sameopenfile(fp1, fp2)
 
@@ -271,7 +270,10 @@
    :func:`stat`.  This function implements the underlying comparison used by
    :func:`samefile` and :func:`sameopenfile`.
 
-   Availability: Unix.
+   Availability: Unix, Windows.
+
+   .. versionchanged:: 3.4
+      Added Windows support.
 
 
 .. function:: split(path)