code: function Condensation(gulp,options) {
    this.gulp = gulp || require('gulp');;
    this.handlebars = Handlebars.create();
    this.options = _.merge({
      s3: [],
      dist: 'dist',
      root: Condensation.DEFAULT_ROOT,
      dependencySrc: [],
      taskPrefix: Condensation.DEFAULT_TASK_PREFIX
    },options);
    this.options.projectFullPath = path.join(process.cwd(),this.options.root);
    this.options.particlesDir = path.join(this.options.root,Condensation.PARTICLES_DIR);
  
    if (!this.options.projectName) {
      try { this.options.projectName = require(path.join(process.cwd(),'package.json')).name; } catch(e) {}
    }
  
    this.particleLoader = new ParticleLoader({
      root: this.options.root
    });
    this.genTaskName = cutil.genTaskNameFunc({prefix:this.options.taskPrefix});
  
    this.helpers = require('./loaders/all-helpers')({
        particleLoader: this.particleLoader,
        handlebars: this.handlebars
    });
  
  }
docs: Condensation
  @class Condensation
  @param {Object} gulp - Gulp object
  @param {Object} options - all options
  @param {Array} options.s3 - list of s3 buckets/paths
  @param {String} [dist="dist"] - top level distribution path name
  @param {String} [root="./"] - root of the condensation project
  @param {String} [taskPrefix="condensation"] - A prefix to add to all task names