XML as an input format

There are several points that this PR addresses.

* Lean heavily on the XML parser in the Python stdlib
  * This makes some of the parsing code cleaner and more robust
* Changes to the unit test records to convert from TXT to XML

Things left to do before merging:

[] XML as input format for coding
[] Data stored within the program as a dictionary
[] Flexible and robust output writing

Some of those TODO points have beginnings in the current version of this PR, specifically in the `utilities.py` module.