code: function init(o){
  	
  	opts.outputPath = dfault( o.outputPath, opts.outputPath );
  
  	opts.consoleOutput = dfault(o.consoleOutput, opts.consoleOutput );
  	opts.consoleOutputLevel = dfault(o.consoleOutputLevel, opts.consoleOutputLevel );
  	
  	opts.fileOutput = dfault(o.fileOutput, opts.fileOutput);
  	opts.fileOutputLevel= dfault(o.fileOutputLevel, opts.fileOutputLevel);
  	
  	opts.dateTimeFormat = dfault(o.dateTimeFormat, opts.dateTimeFormat );
  	opts.fileNamePrefix = dfault(o.fileNamePrefix, opts.fileNamePrefix );
  	opts.fileNameSuffix = dfault(o.fileNameSuffix, opts.fileNameSuffix );
  	opts.fileNameDateFormat = dfault(o.fileNameDateFormat, opts.fileNameDateFormat  );
  	
  	opts.verbose = dfault(o.verbose, opts.verbose ); // verbose option is currently useless
  	opts.customIntro = dfault(o.customIntro, opts.customIntro );
  	
  	if(typeof opts.customIntro ==='function') 
  		opts.customIntro(require('../../package.json')); 
  	else if(opts.customIntro != null &&  opts.customIntro != false);
  		//introduce(require('../../package.json'));
  
  	opts.filename = opts.outputPath + opts.fileNamePrefix + now().format(opts.fileNameDateFormat) + opts.fileNameSuffix +".log";
  
  	whenTheDayEnds(); /** recursive function that calls itself on each new day, use it for your conveninience */
  	
      mkdirSync(opts.outputPath);
  	initialized =true;
  	return self;
  }
docs: /* Misc Functions **