Remove the old device tree.
Remove unused collections header file.
Only print out the UART message if we're debugging.
Remove the old third party code - part of libgcc.
Make all the util code weak so arch can over-ride with asm versions.
Rename the debug dir to console and add an error_print too.

Previously everything routed through the debug code but I've added an
error one and on fatel exceptions it'll print the stack trace but that
may need double checking.
Always -O0 to ensure that it's debuggable - might make it weak so the
target can over-ride it.