Process status bar updates in idle events, saves a lot of unnecessary GUI work.
Further optimisations to cut down status bar update costs.