Move ColorTable mapping to its own header
We would really like to be able to include `vtkm::cont::ColorTable` in such a way that you don't have to compile device code (unless you are actually compiling functions for the device). Thus, the `Map` functions of `ColorTable` were in a special `ColorTable.hxx` that contains the "implementation" for `ColorTable`. That is confusing to many users. It is more clear to simply have `.h` headers that do a specific thing. To achieve these two goals, the `Map` functionality of `ColorTable` is separated out into its own header file. So you don't need to be using a device compiler just to use `ColorTable` (including `ColorTable.h`), but you do need to use a device compiler if mapping values to colors (including `ColorTableMap.h`).
Showing with 266 additions and 200 deletions