Threading works

Threading is now implemented. I had to change the buffer retrieval a
bit. Before I was increasing the main data array with each new data
point. Now I just have the most recent batch. This saves a LOT of time
because the array manipulation / copying was killing me before. Now I
can get ~1kHz on fake data.

Now to try real data.....