Helper which manages the deployment transaction of a smart contract. It
wraps a deployment transaction, and retrieves the contract address output
by it.
To deploy a contract to the Ethereum network, a ContractFactory can be
created which manages the Contract bytecode and Application Binary Interface
(ABI), usually generated from the Solidity compiler.
ContractFactory is a DeploymentTxFactory object with an
Arc middleware. This type alias exists to preserve backwards
compatibility with less-abstract Contracts.