A blackboard workflow controller for JavaScript applications (with thenable support)