add test program for global constructors/destructors
clean up _start(): it is now safe to call OS traps without inline assembly.
_start(): Use exit() instead of ExitToShell()
malloc: set errno on out-of-memory
reduce namespace pollution from console library
configure gcc to pass the right linker flags & simplify CMakeLists

It is no longer necessary to pass special compiler options in order to compile an application.