clean up GetItemInt code and fix negative indexing of objects with length > max(Py_ssize_t)