Continuing through ecash-wallet min required functionality to drop-in to Cashtab.
Agora actions are ... a bit complicated. For this reason they are already constructed and indexed with their own library, ecash-agora.
We want agora txs to be as standardized as possible. To do this, we should continue to use ecash-agora to determine outputs for agora txs. This is somewhat counterthetical to the extreme output granularity we have established in ecash-wallet.
However, this same granularity can help us with the approach adopted in this diff. We use ecash-agora and the agora spec to determine what the outputs should be. Then we create the appropriate token action and handle it with ecash-wallet.