added skip to iterators
added negative index and slice support