Refactor LowestTemperature Calculation

Now in engine instead of object.  Added suite of unit tests around it.