Fix bounds computation for array data source

Chaco throws an exception when an array data source is given an array which is entirely NaN values, percolating up from numpy's `nanargmin` and `nanargmax`.  The `bounded_nanargmin` and `bounded_nanargmax` functions in `array_data_source` look like they were intended to handle edge cases like this, but miss the all NaN case.

This PR adds an explicit check to see if the array is all NaN and returns a result which is not entirely unreasonable if this is the case.