Asyncprogress

Rebased and fixed. Replaces #175 and #181. Closes #169.
On-topic: I can probably update this PR later weekend.