Add rollback last output functionality

Note that this does not include the transaction finalization which is
part of the rollback last output procedure in the opentransactions
wiki.
When I read those names I imagined they'd be checking the amounts in tx.TxIn and tx.TxOut, but instead they check only tx.inputs and tx.outputs. I think it's important that they check both, and probably that they check the addresses (or pkScripts) as well