Organize functionallity of CUDA and GenericOptimized in seperate files
The CUDA.cpp
and GenericOptimized.cpp
files have become quite convoluted, with lots of different functionality.
To make the code easier to understand, the different routines and any of their 'helper' functions have been moved to separate files. This includes gridding, degridding, FFT, calibration, and average beam.
This is a preparation for W-Tiling, which in itself brings a lot of new functions that probably best be added to a new separate file.