Handle deletion of elements when iterating over a SortedSet

This implementation can handle deleted elements and fixes #866 which seems to be a fairly serious issue. I'm not too happy with the implementation considering asking for the size on each loop doubles the number of redis calls. I considered a memoized size, but it seemed error prone. Some input would be awesome. We can iterate on this and get it right.