Our GetFileSize usage doesn't detect errors or handle 64-bit files
When we are about to map a file on windows, we use GetFileSize to find out how big it is. But GetFileSize as we're using it doesn't return a 64-bit value, and we aren't checking for error cases. Better fix that.