Migrate from TinyXML v1 to v2

Admittedly not heavily tested yet but loaded and saved a few times, twiddled some options, and checked that mods still work. The ability to deep clone a tree has gone so I just used the "printer" to output the XML into a buffer and parse it back in again. I have seen an experimental patch for deep cloning but using the printer seemed like the easiest and safest option. C++ isn't my strongest language so you may want to go over these changes carefully to make sure I haven't done anything stupid. I'm used to C where adding more safeguards is the norm.

I haven't bundled v2, you know how much I love bundling so I'll leave that to you. :wink: This means that the Visual Studio projects are broken. Truth is I didn't notice them till just now, I thought the Windows guys just used CMake.