Refactor STPTestPaymentAuthorizationViewController to be more fully-featured

This updates both STPTestPaymentAuthorizationViewController to more closely resemble PKPaymentAuthorizationViewController and makes the example app somewhat more powerful/realistic.

@raycmorgan - we should go through this and make sure if it works similarly to PKPaymentAuthorizationViewController. I'm specifically curious about when `controller:didSelectShippingAddress` gets called, and thus how the initial array of `paymentSummaryItems` gets populated.
During the "obscure" flow, `StreetKey` isn't actually in the dictionary.