Remove order.update_totals from order.payment_required?

Instead we can call `order.update_totals` on the checkout_flow block
only since that's the only place on the code base where it seems to be
necessary. Plus calling `order.update_totals` generates a whole bunch of
work users may really not need or expect when calling
`order.payment_required?`

Fixes #3086
Fixes #3040