MAINT: multiarray: fix types

convert_datatype.c and number.c now compile without warnings.
MAINT: umath: get rid of "statement with no effect" warning

(What was this line for anyway?)
Merge pull request #4061 from larsmans/c-fixes

MAINT: Minor C fixes
ENH: optimize np.where via nditer with external loop

Implementation via PyArray_Choose is very slow, a direct implementation
is 10 times faster.
Optimizing Choose is more complicated due to its higher complexity and
would require specialization for optimal np.where anyway, but it is
something that could be done in future.
ENH: improve new where function

Allow object and zerosized iteration and move bool casting of mask into
the iterator logic and improve tests appropriately.