Don't count GlobalCollect setup_purchase response as successful

Add a bit more fine-grained status code interpretation so that upstream
code doesn't mistake a 'successful' setup response for a successful
purchase. The next step will be to introduce a custom response type if
necessary.

Also weirdness about "pending at global collect" as cancelled has been
addressed. Weird.