fix #653, overuse of Redis KEYS in mirror

This is a bit speculative, I think it should still do the right thing if the lists expire while they're in the middle of being processed (which was also possible with the previous code, of course). @jessereynolds, I'll need your review and signoff before merging, as you may see problems I didn't with this approach.