Improve error handling for invalid XML metadata files
Currently, when there is an error with an XML metadata file (usually introduced by git merges), Gearset will produce an error, either in the Initializing Comparison, or Checking Deployment stages, stating simply that "An unknown error occurred."
If Gearset instead ran the XML from source control through an XML validator using the Partner WSDL XMLSchema, then we could get file-level validation errors if the XML doesn't conform to what Salesforce's Metadata API will accept.
e.g.:
$ xmlstarlet val -e -s ~/Downloads/salesforce-schema.xml force-app/main/default/profiles/Marketing.profile-meta.xml
force-app/main/default/profiles/Marketing.profile-meta.xml:17108.15: Element '{http://soap.sforce.com/2006/04/metadata}field': This element is not expected.
force-app/main/default/profiles/Marketing.profile-meta.xml - invalid