adds test with imperfect step size
Handles case of uneven step size

with a slice like [0:5:3] the position isn't exactly equal to the end,
so the Slice::Iterator::operator!= has to handle that case