Incorporate DFXML library updates

Most prominently:
* The Python scripts now require Python 3, resolving some tedious byte
  encoding issues.
* Some null-aware safety checks have been added
* DFXML files are now opened correctly (in binary mode)

Signed-off-by: Alex Nelson <a.nelson@prometheuscomputing.com>