The name, message, and stack properties on Errors should be non-enumerable.

In order to make the error subclasses behave more closely like the built-in
JavaScript error classes, the name, message, and stack properties should be
designated as non-enumerable.
Rename 'canAttach' -> 'canAttachTrace
Only attach traces if .stack is writable
Clear handler data immediately
Report file name instead of unreliable test.title
replace void 0 with undefined
Fixes #411
Fixes #293
Relax the requirement for logging stacks when uncaught errors happens
ignore benchmark.js
enable verbose mode when running single slow test type
Optimize all collection methods by not scanning the array
twice when it contains an immediate value
Use values directly instead of having extra checks
Move public methods after constructor
Dont store undefined unnecessarily
Release v2.4.0