fix array/slice behavior when start/end is higher than array length

I think we should release v0.9.1 as soon as this gets merged since it's a bug fix.

closes #170