merge serialfft into main, update CmakeLists, merge utils, abstract some code