gtiffread returns array w/ min. consis. datatype

gtiffread returns an array with the least consistent datatype

for example, a GeoTiff with bands with type Int16, Int32, Float32 will create an
array with dtype np.float32. Arguable, it would be better to return a list of
arrays with the appropriate datatype, and should be done in the future.

Previous behaviour always used np.float64, which could be very inefficient.