Support passing a tuple as parameter of numpy.ndindex

Also fix a bad iterator typing issue in the associated iterator.
Fix behavior of the modulo operator in presence of negative input

C++ and Python differ on that point: the output is always positive with
Python and not in C++.
Support augmented assign for ndarrays
Add a difficult test case from parakeet