First pass on the transaction creation API.