Add utility methods for explicit authorization and capture.

There are times in custom applications that we explicitly want to
authorize or capture regardless of the payment_methods auto capture
preference or the store configuration. This lets us do that while
maintaining that the regular preconditions for payments are met.
Refactor process_payments!

As with the payment changes, this allows us to call custom methods on
payments for processing.
Add authorize_payments! and capture_payments! to orders.

Allows us to specifically authorize or capture payments on an order.