Update Executor: add abstract methods .on_failure() and .fail()
Update tests: check on_failure callback on each failed workflow
Fix swf.executor: wrong timer value