added experimental minimal version of task.js