Heap code now properly handles 64b and 512b mallocs properly, reimplemented serial console

Made some improvements to the dprintf and printf functions. Now support 64 bit and 32 bit integers %p is a 64bit fixed width hex