recovery: do not filter result in python

Statements like:
    if result.id_range.start <= record.response.key <= result.id_range.stop:
are very slow in python esp. when executed many millions and potentially
billions of times.

So now we are putting all results in one big iterator result.