Deploy the contract Wasm and after deployment invoke the init function of the contract with the given arguments.
This has to be authorized by deployer (unless the Deployer instance
itself is used as deployer). This way the whole operation is atomic
and it's not possible to frontrun the contract initialization.
Returns the contract address and result of the init function.
fn deploy(
env: soroban_sdk::Env,
deployer: soroban_sdk::Address,
wasm_hash: soroban_sdk::BytesN<32>,
salt: soroban_sdk::BytesN<32>,
init_fn: soroban_sdk::Symbol,
init_args: soroban_sdk::Vec,
) -> (soroban_sdk::Address, soroban_sdk::Val)