If the arrays do not have the same shape then we return NotImplemented.
This will fix issue #2 (closed) for the case where the arrays are the same shape, and it should
TypeError in the other cases.
This currently fails for Python 2 because
TypeError is not raised, even when the comparison methods