Remove `task.progress` event

Use `task.change` instead to avoid problem when refresh tasks list page.
Polish task progress.

Save task progress on fly to avoid progress lost.