Implement safe wrapper around GSL hyperbolic functions
In the current flow of evaluating mathematical expressions using GSL, we can encounter situations in which GSL returns NaN, for example evaluating "sech(x)" with x been +/-150, whereas the value is well defined. This comes from the GSL implementation.
In order to deal with this, we should implement a wrapper in liboct_parser/gsl_userdef.c
that checks the bounds and only call GSL for range of values which do not produce NaNs.