Rejecting if progress handler throws

As discussed in #1. There's probably a lot of room for improvement.