     startNextPlayer = (failureCallback) =>
       nextPlayer()
       while @currentPlayer and not @currentPlayer.canHandleGoal(@job.goal)
-        wesabe.warn("Skipping player ", @currentPlayer, " since it can't handle goal: ", @job.goal)
+        logger.warn "Skipping player ", @currentPlayer, " since it can't handle goal: ", @job.goal
         nextPlayer()
 
       if @currentPlayer
-        wesabe.info("Starting player ", @currentPlayer)
+        logger.info "Starting player ", @currentPlayer
         @currentPlayer.job = @job
-        @currentPlayer.start(answers, browser)
+        @currentPlayer.start answers, browser
       else if failureCallback
         failureCallback()
       else
-        wesabe.info("No more players to handle goal: ", @job.goal)
-        @job.fail(400, "goal.unreachable")
+        logger.info "No more players to handle goal: ", @job.goal
+        @job.fail 400, "goal.unreachable"
 
     nextPlayer = =>
       @currentPlayer?.job = null

    # customize fail to go to the next player
    job_fail_original = @job.fail
    @job.fail = (status, result) =>
      wesabe.info "Could not complete job with ", @currentPlayer, " (", status, " ", result, ")"

      # if we can't, just report the last failure
      startNextPlayer(=> job_fail_original.call(@job, status, result))

      @fid: params.fid
      @org: params.org

    extend klass.prototype, params

    return klass

