refactor exception in system.js,
add thread attribute. setting it to true tells engine not to
continue exectuting next system, it falls on the developer
to call this.yield()  system to continue execution