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