Dynamic demod and threads

Demodulator can now be instanced and set dynamically, major threading rewrite /w performance improvements