Move FFT out of OpenCL backend