Updated firmware and lots of other things

Been a while since I last committed. Whoops. I think this fixes a lot of
bugs and also makes the firmware compatible with the finished PCB. It
also includes files like a DMX hardware test, among others.