fnRequestCompleted = function(mResult) {
				iLoadCount++;

				if (mResult.type === "success") {
					mResults.success.push(mResult);
				} else {
					mResults.fail.push(mResult);
				}

				if (iLoadCount === aUris.length) {
					// Finished loading all URIs
					mResults.annotations = that.oAnnotations;

					if (mResults.success.length > 0) {
						// For compatibility reasons, we fire the loaded event if at least one has been loaded...
						var mSuccess = {
							annotations: that.oAnnotations,
							results: mResults
						};

						that.fireLoaded(mSuccess);
					}

					if (mResults.success.length < aUris.length) {
						// firefailed is called for every failed URL in _loadFromUrl
						var oError = new Error("At least one annotation failed to load/parse/merge");
						oError.annotations = mResults.annotations;
						oError.success = mResults.success;
						oError.fail = mResults.fail;
						fnReject(oError);
					} else {
						// All URLs could be loaded and parsed
						fnResolve(mResults);
					}
				}
			}
Adds either one URL or an array of URLs to be loaded and parsed. The result will be merged into the annotations
data which can be retrieved using the getAnnotations-method.

@param {string|string[]} vUrl Either one URL as string or an array of URL strings
@return {Promise} The Promise to load the given URL(s), resolved if all URLs have been loaded, rejected if at
        least one failed to load. The argument is an object containing the annotations object, success (an array
        of sucessfully loaded URLs), fail (an array ob of failed URLs).
@public