numpy_support: support using dtype array types

Arrays can have a type of dtype('int32') which is not an actual instance
of a numpy array type, but the builtin types can be converted to a
dtype and compared. Now arrays of type dtype('int32') are caught as
vtk.VTK_INT since dtype(numpy.int32) is dtype('int32').

Also change the query around to using a single for loop over the items
in the dictionary rather than a possible exception raising with a for
loop fallback.

Change-Id: Id9b24b3675b0ce50f7401e4ed6f4f42e9e2d1c2c
numpy_support: don't convert array types if possible

Same reasoning as the prior commit.

Change-Id: I78def9672e32769b252c547c96be6213232480e1
numpy_support: deep copy for type mismatched array data

Change-Id: Id52894fe6866c355bbfd49d29b1feb4d6faaf303
numpy: test numpy_to_vtk when requesting specific types

This causes the underlying logic to convert the data with NumPy then add
*that* as the VTK backing data array. This should force a deep copy
since the converted data doesn't have a lifetime outside of the
converting function.

Change-Id: Ie3de186799006a44e63b2544cc891826288d6565
Merge topic 'numpy-dtype-support' into master

7ef36ba0 numpy: test numpy_to_vtk when requesting specific types
7e9456ae numpy_support: deep copy for type mismatched array data
ef8735af numpy_support: don't convert array types if possible
a400d836 numpy_support: support using dtype array types