Refactor parts of vtkLookupTable

- Refactor GetNaNColorAsUnsignedChars function to make it useful to
  retrieve other colors as unsigned char

- Refactor the index lookup in vtkLookupTable

- Refactor shift and scale computation throughout vtkLookupTable

- Put internal functions into anonymous namespace to avoid
  potential duplicate symbol errors when linking

- Stuff lookup table parameters into struct and pass it around the
  internal functions

- Copy NanColor in DeepCopy()

These changes result in up to 6% performance improvement in
vtkLookupTable::MapScalarsThroughTable2().

Change-Id: If6147725ac80d929d475fefacdcd787ea4568eb8
Merge topic 'refactor_vtkLookupTable' into master

f8eee620 Refactor parts of vtkLookupTable