Defer payment provider logout (bug 1037513)

The API to start a transaction doesn't return
a payment provider because the transaction has not
been created yet. This defers payment provider logout
until right before we redirect to the provider's web
flow.

@muffinresearch r?

There is also a Webpay patch coming shortly.
This test feels wrong because it's nearly identical to the other test except that it asserts another error code. This would be nice to do in a unit test somehow but all the async requests within wait.js seem to make it tricky.