simpler handling of backtrace printing
remove BackTrace and add_backtrace
fix test error reporting to show backtraces from where the error happened, rather than from inside test.jl. done using rethrow()