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?`

I was looking into #3040 and found the case where `order.update_totals` was called twice consecutively. I think that was necessary to fix some issue in the past but it doesn't seem to be the case any more. I ran this change on CI and everything is still green.