aptos: upgrade `complete_transfer` to use `aptos_account::deposit_coins`
Currently, in the Aptos contracts, complete_transfer deposits coins to both the recipient specified in the VAA and the fee recipient (ie the caller of the method that has relayed the VAA). In Aptos, accounts need to register coins before they can transact them. While the Aptos contract currently registers the coin for the fee recipient, it does not do so for the recipient as they are not a signer of the transaction.
While this is fine for cases in which the recipient relays their own VAA, it is unergonomic when relayer is not the recipient. As a result, we should consider upgrading the contract to use aptos_account::deposit_coins instead of coin::deposit, as the former allows the contract to register coins on behalf of the recipient as long as they haven't opted out of arbitrary coin transfers.
cc @kcsongor
this feature is not yet available on mainnet (see the coin module under https://explorer.aptoslabs.com/account/0x1/modules), but agree with the change once it's available