ColumnReduceKernel: type casting fix and improvement
@sagunb I have addressed the review comments in my commits. Could you help to review them? Here are the internal errors, @johnnkp can you please verify ? Thank you!

Traceback (most recent call last):
  File "/py/absl/testing/parameterized.py", line 321, in bound_param_test
    return test_method(self, *testcase_params)
  File "/py/absl/testing/flagsaver.py", line 288, in _flagsaver_wrapper
    return func(*args, **kwargs)
  File "/tensorflow/python/tpu/google/sparse_core/tpu_embedding_v3_test.py", line 610, in test_single_feature_single_table_lookup_with_csr_input_with_minibatching
    result = test_fn()
  File "/tensorflow/python/util/traceback_utils.py", line 141, in error_handler
    return fn(*args, **kwargs)
  File "/tensorflow/python/eager/polymorphic_function/polymorphic_function.py", line 831, in __call__
    result = self._call(*args, **kwds)
  File "/tensorflow/python/eager/polymorphic_function/polymorphic_function.py", line 904, in _call
    return tracing_compilation.call_function(
  File "/tensorflow/python/eager/polymorphic_function/tracing_compilation.py", line 139, in call_function
    return function._call_flat(  # pylint: disable=protected-access
  File "/tensorflow/python/eager/polymorphic_function/concrete_function.py", line 1264, in _call_flat
    return self._inference_function.flat_call(args)
  File "/tensorflow/python/eager/polymorphic_function/atomic_function.py", line 217, in flat_call
    flat_outputs = self(*args)
  File "/tensorflow/python/eager/polymorphic_function/atomic_function.py", line 252, in __call__
    outputs = self._bound_context.call_function(
  File "/tensorflow/python/eager/context.py", line 1479, in call_function
    outputs = execute.execute(
  File "/tensorflow/python/eager/execute.py", line 60, in quick_execute
    tensors = pywrap_tfe.TFE_Py_Execute(ctx._handle, device_name, op_name,
google3.third_party.tensorflow.python.framework.errors_impl.InternalError: Graph execution error:

Program or fatal error occurred; computation may be invalid: INTERNAL: Accelerator device halted prematurely, perhaps due to an on-device check-failure. Node 0 halted unexpectedly at tag:pc TensorCoreSequencer:1:0x9c (from TensorCoreSequencer:1:0x1cc): no debugging message found for this tag:pc. HLO: custom-call.1.cloned.call-done; HLO computation: main.13
=== Source Location Trace: ===
learning/brain/tpu/runtime/hal/internal/tpu_program_termination_validation.cc:113
 [Op:__inference_test_fn_114479] TPU errors may be related to old master branch commits. I don't have TPU. Once I finished compilation of 2.14, I will tell you the  results. @gbaned I am not able to finish compilation because of other errors. Can you run the internal test again?
This is a draft PR to fix https://github.com/tensorflow/tensorflow/issues/61357. Fixing a casting error and flatc MSVC link error.