Performance improved

Cut down on the usage of self::_getArray(); where it was not actually
needed, and used xPath / DomDocument objects instead.