Updated handling of subcode checking so that we do not leave Preferences
nodes hanging when they shouldn't be (maybe we would be better off
leaving them in case the config changes while running? How does
AbstractPreferences handle recreating a removed node?) Maybe need to
revisit...
Proof of concept for a threaded XML Parser
Converted PoC to be batched so that progress on individual courses can
be made while the remaining courses are parsed out of the source XML
Generalization of the batching classes.
First stages of genericizing the XML Parser classes so that multiple
implementations could be used for parsing XML (for instance, both XQuery
and XPath - possibly more).
Reorganized and improved the profile settings for XML Parsing. Made the
XML preferences nodes a little more generic while preserving the XPath
specific functionality.