Removed median. Allowed hazard & chf to be provided by derived accessors, and removed any mention of std::numeric_limits<T>::quiet_NaN()