Add support for negative indexes/slices.
Add support for non-unit step