Bug in compare functions for double and SimulationTime

The compare functions for double and SimulationTime are passed pointers, but the comparison function doesn't dereference them, so the comparison is done on the memory address instead of the actual value.

This is one of the causes of indeterminate runs.  The retransmission timer functions use a priority queue to store retransmission timers, causing retransmissions to get scheduled out of order.