Basically, added error handling, interrupts and basic hardware communication is now possible. Yay.
Also made some type changes in serial.h