Cast indices to intp rather than intc.

The intent was correctly described in the comment - to cast to int32 on 32-bit machines and to int64
on 64-bit.  However, numpy.intc is not correct type to achieve that because it has the size of C int and
is 32-bit always.  The correct type is numpy.intp which is defined as "large enough to fit a pointer."

See http://docs.scipy.org/doc/numpy/reference/arrays.scalars.html .