Enchance UserBalanceUpdateEvent

Event handlers can now access the old balance and modify the new

Fully API-compatible except for a change in the constructor