I'd be interested to know that as well.
Traditionally, currency systems were designed the way OP suggests. Not sure what was the rationale for designing the transactions this way. It's certainly irregular, but perhaps there was some kind of articulated reason somewhere.
Because it makes good engineering sense.
Technically we have a balance sheet anyway: the set of unspent transaction outputs (UTXO).
Jeff, thanks for the response.
Was there some kind of recorded discussion about why it was done this way?
yes we have the set of UTXOs, but the entire chain must be traversed in order to compute this set! Thus computation issues are built into the system. If you were to have a tx format like OP suggests, you could eliminate much of the computation(to find a balance, you just find the last tx with account X as destination).
Of course I really don't know how you could implement the scripting system with this.