So far I have done most of my programming in Arduino, after spending a lot of time and reaching the end limitations of the Arduino system, I have decided to port the code to AVR C. This makes things simpler in the fact of when I get my new controller made for it I will be using a Atmel M0+ Processor and already having it in AVR C will make it simple to port to the new controller.
Of course this does not come without any problems along the way. I am relatively new to AVR and Bare C programming, and therefore my code is nowhere close to optimized and I have to learn the use of pointers and such. But I am learning this very quickly as I go and I already have UART and am currently working to get I2C/TWI up and working properly. I am working with a Atmega328pb Xplained Mini board to make it simpler on myself and I can use Atmel's nice debugging features that are surprisingly helpful.
Hopefully my next update will be when I order my fins for my rocket.