XML maps implemented with tinyxml2, also included tinyxml2 because it was being a pain