Setting up the FFT tables turns out to be quite expensive because of the
large number of calls to sin() and cos().
In the future we may want to look into having a global cache of FFT
tables per size, in order to pay the cost of setting each one of them up
only once.
--HG--
extra : rebase_source : 871d11e7f74db9e3e6c704da9518d40cba3deb8a
This is useful in order for us to be able to borrow code from Blink with
fewer changes, and also to explore faster platform dependent FFT
implementations in the future if needed.
--HG--
extra : rebase_source : 34bbded736e1b385754756513c59ee27ce7552a5