Fix encoding errors

On Windows systems, when gyp reads and writes vcxproj files, it messes up with the encodings, because the generate XML files are stored as Latin-1 files instead of UTF-8.

It can become problematic since project files often contain paths, and paths can contain accented characters that are handled differently between Latin-1 and UTF-8. This addresses the issue by converting encoding to UTF-8 right before the file is saved.

This problem is not new, it has already been reported in issues #297, #404, atom/atom#1937,  ZECTBynmo/node-core-audio#27, #476 and many others. Pull request #366 was sent a year ago as an attempt to fix the problem, but wasn't taken into consideration.

Two years after initial report, this is still not solved, so please review this one.