Use slicing syntax instead of methods and add a feature gate

cc @aturon 

r? anyone?
And I don't know why index is implemented that way. Perhaps @pcwalton does?