- in upgradeUserToken: reusing all the information in the previous tokenobject

- token.receipt.post: handled both async and sync receipt validators