Refactoring, Implement effect, failback, scoping / close #2