[Payment Request] Creates IOSPaymentInstrumentFinder class to get Payment App details

This new class is used to find and validate the payment apps that can handle a
a set of url payment method identifiers. In the short term, iOS will be
working under the assumption that there is only one payment app that can
handle a specified payment method. This however will change in the long
run to match Android/Desktop implementations such that any number of
payment apps can handle a payment method identifier as specified by payment
method manifest.

Most of the unittests and parsing are based off of the parsing code originally
written here:

https://cs.chromium.org/chromium/src/components/payments/content/utility/payment_manifest_parser.cc?rcl=6a53ba2305e2d0196d8f46f8590e0ad1fa45d636
This is another component of this CL that for the short term works fine but in
the long term will need to be refactored to avoid code duplication.

Bug: 748556
Change-Id: Ib0ce3be91830555cb9a3e1fc919d98b6ad9898f4
Reviewed-on: https://chromium-review.googlesource.com/582494
Reviewed-by: Marijn Kruisselbrink <[email protected]>
Reviewed-by: Ryan Sturm <[email protected]>
Reviewed-by: Scott Little <[email protected]>
Reviewed-by: mahmadi <[email protected]>
Reviewed-by: Rouslan Solomakhin <[email protected]>
Reviewed-by: Mathieu Perreault <[email protected]>
Commit-Queue: Randall Raymond <[email protected]>
Cr-Commit-Position: refs/heads/master@{#490983}
diff --git a/components/payments/core/DEPS b/components/payments/core/DEPS
index 59baa08..31749cb1 100644
--- a/components/payments/core/DEPS
+++ b/components/payments/core/DEPS
@@ -2,7 +2,9 @@
   "-components/payments/content",
   "-content",
   "+components/autofill/core",
+  "+components/data_use_measurement",
   "+components/keyed_service/core",
+  "+components/link_header_util",
   "+components/metrics",
   "+components/prefs",
   "+components/pref_registry",