Most of puppet has been modified, including a new Puppet::FileSystem.replace_file that behaves sanely on windows. There are a few callsites wrt filebucket and parsed file providers, but I don't plan on changing them, so I'm going to close this.