This is perhaps debatable but the ikey, isig indices are always intended
to iterate in step with the number of remaining objects, and the numbers
remaining are the important values needed to know when to stop iteration.
The ikey, isig thus only serve to avoid some (fast) arithmetic.
Depends on D3625