special functions: split out bessel functions from mathfunc.c