updated assert macro and other in-place macros
fixed up some old code and comments
set up assert() to use abort()
made stack use function pointers to free numbers