Stateful transaction logging for events that occur in the system. Account, Sub-account, Ledger creation, deletion, assignment. Creating, deleting, editing journal entries, etc. This will allow us to undo by storing the original data in a storable object or XML snippet and roll back transactions.
Date integrity vs. Annoyance
Multi-windowed system vs. Single-windowed system