New Isocontouring filter for discrete, labled volumetric data: vtkSurfaceNets3D

Hi Will,

playing around some more, I realized that decimating the output mesh(es) might be useful in some circumstances. It would probably be a good idea to decimate using the default output style in which points at interior boundaries are shared. However, doing that, the color information encoded in BoundaryLabels seems to get lost. Would it make sense to offer decimation as an option in vtkSurfaceNets3D or is the VTK philosophy to keep these filter steps separate? If so, is there a way to make sure that vtkDecimatePro also acts on the BoundaryLabels produced by vtkSurfaceNets3D?