Moved exception checks from XML load-time

Moved hard checks to throw exceptions out of the XML loading common location and out to the last 2 locations where they didn't already exist.  This change will allow some sentences to be used on slightly suspicious XML, particularly when namespaces are used.

Note that all other important scenarios for throwing DomException are already covered through the validation methods.