Added SPI communication for the DAC. Now there will always be 256 (or more) samples per period. And the ISR is setup for handling triangle and sine waves. Buttons, lookup tables and UART still need to be added.
Added UART communication for future debugging. Also fixed the samples_per_period to 256 instead of allowing my algorithm to adjust it. I looked through my test data and although my algorithm sometimes did adjust it, that was when I was starting with 4 divisions and it only ever really went up to like 8 within practical values. So by starting at 256 we should be completely fine and simplify quite a few things (also it was taking a while to run on the arduino). If we need it later, I'll add it back in.