Negative indexes

This one's kinda nasty. It can cause some *very* subtle bugs.