docs: function() {
  
      //if the name was not set by the last meta file set it based on the file path
      if( (!this.name || this.name === 'Class') && typeof this.filePath === 'string' ) {
        this.name = path.basename(this.filePath);
      }
  
      //make sure the meta object exists
      if( typeof this.meta !== 'object' ) {
        console.log(colors.gray('class meta:'), 'not found!');
        this.meta = {};
      }
  
      //make sure the meta methods object exists
      if( typeof this.meta.methods !== 'object' ) {
        console.log(colors.yellow('class meta:'), 'missing methods object!');
        this.meta.methods = {};
      }
  
      //loop through methods in the meta object
      for( var method in this.meta.methods ) {
  
        //delete any method from meta that does not actually exist on the class
        if( !(method in this) ) {
          console.log(colors.yellow('class missing method:'), {class: this.name, method: method});
          delete this.meta.methods[method];
        }
  
      }
  
      /*
      //loop through methods in the class
      for( var method in this ) {
  
        if( typeof this[method] === 'function' ) {
  
          //alert about methods missing from the meta data
          if (!(method in this.meta.methods)) {
            console.log(colors.yellow('meta missing method:'), {class: this.name, method: method});
          }
  
        }
      }
      //*/
  
    }