Overhauling CMakeLists.txt to produce sane builds on Windows.
"TX2_STATIC" => "TINYXML2_STATIC"
Removed repeated definition of _CRT_SECURE_NO_WARNINGS.

CMake is configured to define this for us when compiling with MSVC.
Added import/export macro definition for shared libs.
Corrected a typo.
Added macro definitions for detecting whether lib is being build or linked to.
Marked all classes and static functions that are part of the API with TINYXML2_API attribute.
Added configuration for installing runtime (DLL) components.
Changes how tests executable in build and how it and it's resources are installed.
Removes code that unnecessarily emulates behavior baked into `include(GNUInstallDirs)`
Switches to using separate variable for library name instead of using project's name.
Adds include for compiling with MinGW.
Correctly marks everything for import/export.
Version info now read from external file, version.cmake.
Version variables now set via include, version.h.
Rewrite of setversion.py to write version info to separate files

setversion.py now writes version configuration files that are consumed via native include mechanisms. It has some basic error checking via exceptions and prints status information.
Project version now set via include, version.dox.
Marked readme.md with #mainpage tag to have Doxygen use it for index page.
Use readme.md instead of readme.txt
Use version number components instead of now non-existent GENERIC_LIB_VERSION