The way WriteTopic.set compares values to see if anything changes, NaN is not equal to NaN (as is typical). Fix this so one can set a field that is NaN to NaN again to (or an array containing one or more elements that are NaN to the same array value again) without WriteTopic.set thinking the field value has changed.
The main driver for this is to make ControllerEvent.set_put only write data if a value that is NaN (or an array containing a NaN) is truly set to a new value. Now that we have agreed to use NaN as the "no data available" signal for floats in the EFD, I expect us to be writing more NaNs to events. I need this in
Also change TestCsc.assert_arrays/scalars_equal to make NaN compare equal.