floating-point and fixed-point FFT algorithm implementation, and a change in template_recursion