convert to ledger for balances
Instead or in addition to Perl, we can use Ledger. To this end, the original simple timerange+account strings must be converted to Ledger entries.
The advantage of Ledger is that balances (and a lot more) can be calculated with this high-level tool. Ledger may be able to do much more where currencies and other assets have no equivalent with hour registration, but you can use as little of ledger as you want (I typically just calculate balances).
Entering ledger entries directly is useful for financial asset transactions but it's overkill for Agato's purpose (and ledger doesn't use absolute times and shifting between accounts would be difficult). Therefore the simpler format would need to be converted to Ledger first. Ledger would be used as an internal format.