Re #9118. Fix narrowing conversion compiler warning the long way.

Rather than resorting to a static_cast, it seems like the method over on
the VATES side should be returning a coord_t (float) to align it with
the IMDDimension that it relates to.
Re #9118. Correct tests to fix builds.
Re #9118. Protect against malformed XML.

I added a bunch of tests for the XML string not being as expected and
then refactored the code to protect against that.