change MAX_DISCRETE_VALUES into an ivar

Change MAX_DISCRETE_VALUES from a hardcoded value of 32 to a user-
settable ivar.  This allows users of vtkAbstractArray to generate
a categorical color map for data sets containing more than 32
discrete values.

For backwards compatibility, we keep the MAX_DISCRETE_VALUES enum
and use it to initialize MaxDiscreteValues.  This enum is marked
as deprecated.

Change-Id: I83bf7c598288dc28a4ad231778c66e1571e3a461
use SetMaxDiscreteValues for categorical color map

Use the new function vtkAbstractArray::SetMaxDiscreteValues within
vtkTreeHeatmapItem.  This allows us to properly color categorical
datasets that contain more than 32 distinct values.

Within this commit, we also change the color set that we're using for
the categorical color map.  The accent set is pretty, but it only has
8 different values.  Instead we'll use qualitative set3 because it
has 12 values.

Finally, we fix a bug in vtkTreeHeatmapItem so that our NaN color
(grey) is used appropriately by our categorical lookup table.

Change-Id: I53bc9f13240be8c0c10b5dbc77bdcca1ea0fa2a1
Merge topic 'more_than_32_categories' into master

2c86574b use SetMaxDiscreteValues for categorical color map
02ffb7ac change MAX_DISCRETE_VALUES into an ivar