Issue #2. Introduce execution contexts