docs: function paths(dir) {
  	var paths = [];
  
  	try {
  		fs.statSync(dir);
  	}
  	catch (e) {
  		return e;
  	}
  
  	(function traverse(dir, stack) {
  		stack.push(dir);
  		fs.readdirSync(stack.join('/')).forEach(function(file) {
  			var path = stack.concat([file]).join('/'),
  				stat = fs.statSync(path);
  
  			if (file[0] == '.' || file === 'vendor') {
  				return;
  			} else if (stat.isFile() && /\.js$/.test(file)) {
  				paths.push(path);
  			} else if (stat.isDirectory()) {
  				paths.push(path);
  				traverse(file, stack);
  			}
  		});
  		stack.pop();
  	})(dir || '.', []);
  
  	return paths;
  }