Fixed bug in ThermoData extrapolation to Cp0 and CpInf.
Fixed bug in ThermoData extrapolation to Cp0 and CpInf.

The previous implementation assumed that the slope of the heat capacity
curve was always positive. However, for certain small molecules, this is
not the case. This caused a massive error in the computed enthalpy and
free energy. The commit fixes things by checking for a nonnegative slope
and only applying the extrapolation to Cp0 or CpInf if it makes sense to
do so.

nickvandewiele/RMG-Py,chatelak/RMG-Py,chatelak/RMG-Py,KEHANG/RMG-Py,nyee/RMG-Py,comocheng/RMG-Py,comocheng/RMG-Py,faribas/RMG-Py,pierrelb/RMG-Py,faribas/RMG-Py,nyee/RMG-Py,nickvandewiele/RMG-Py,enochd/RMG-Py,enochd/RMG-Py,pierrelb/RMG-Py,KEHANG/RMG-Py