indices to pointers/arrays now correctly sign/zero extend.
refactoring indexing for pointer arithmetic to use normal primative casting rules.