Add `_update_progress` for clearer profiling

Factored out `_update_progress` from the core hazard curve computation task
code. In the future, I want to be able to specifically profile this block of
code, so this will make it easier to distinguish in profiling reports.

The reason I'm submitting this change is because I suspect this part of the code is consuming a significant amount of time to interact with the database, and I want to understand just how much time.

Related to https://bugs.launchpad.net/openquake/+bug/1121825.