fix for 'Maximum call stack size exceeded' error

This case show a 'Maximum call stack size exceeded' error:

    'use strict';
    /*global console*/

    // co version 3.0.6
    var co = require('co');

    function task(callback) {
      callback(null, 1);
    };

    // 10000 will throw a 'Maximum call stack size exceeded' error
    co(function *(){
      for (var i = 0, l = 10000; i < l; i++) {
        yield task;
      }
    })(function(){
      console.log('Success!')
    });