Added a bunch of UART functions (different ways to print things)

Added a bunch of debug print fuctions based on new UART functions, these should eventually include other print methods based on the user configuration (TCP for example)

Added support for DI, AI