Finished printing functions and X-macro conversion
malloc/free partially completed