This allows for a transaction to clear one account before the other (and mirrors how Gnucash, and I suspect most other pieces of software, do it)
This makes them native Go code, and will allow for fetching them directly from financial institutions later.