For Subscriptions v2.0.
* Use new 'woocommerce_subscription_failing_payment_method_updated_' hook
* Use new wcs_is_subscription() method to run process_subscription() when the
transaction is for a subscription object.
* Save the card and customer IDs on the 'shop_subscription' post from the renewal
order rather than saving it on the order which purchased the subscription.
* Add new save_subscription_meta() method to allow us to save customer ID both
in Subscriptions 1.n on the original order and in 2.0 on the subscription/s
created for the order)
* Use the new 'woocommerce_scheduled_subscription_payment_simplify' hook and
deprecate use of the old 'scheduled_subscription_payment_simplify' hook by
moving it to the WC_Addons_Gateway_Simplify_Commerce_Deprecated class
* Use core WC methods on the renewal order passed to scheduled_subscription_payment()
to process the payment rather than having to call special Subscriptions API methods
like WC_Subscriptions_Manager::process_subscription_payments_on_order() and
WC_Subscriptions_Manager::process_subscription_payment_failure_on_order()
* Use the original order's total to determine the amount to charge up-front to
save having to call WC_Subscriptions_Order::get_total_initial_payment()
* Use a description for recurring payments that is consistent with standard orders,
i.e. "{Site Name} - Order {order_id}" instead of a description that does not include
the renewal order's ID. This helps link payments to orders (which can then be traced
to subscription/s).
Specifically, match WC_Meta_Box_Product_Data::save_variations() to the newer,
almost identical, WC_Ajax::save_variations(), added in SHA: ae18af8c (so that
we can eventually replace the newer WC_Ajax::save_variations().
To allow extensions which add their own variation bulk actions to pass
data back to WooCommerce core's handler so that only one ajax call
is necessary for updating the data.
Previously, a duplicate ajax call would be required as trigger() does
not capture the callbacks return value.