code: function Mandrill(keys){
  	this.name = "mandrill"
  	this.keys = keys
  
    this.initialize = function() {
      var mandrill = require('mandrill-api/mandrill')
      this.client = new mandrill.Mandrill(this.keys.api_key);
    }
  
    this.send = function(data, callback) {
      var context = this
      var mandrillMessage = {
        'html': data.message,
        'subject': data.subject,
        'from_email': data.from || this.keys.from_email,
        'to': [
          {
            'email': data.to,
            'type': 'to'
          }
        ]
      };
  
      // Validate from email
      var fromObj = validateFromEmail(mandrillMessage.from_email);
      if (!fromObj.valid) return callback(new MandrillUserStatus(fromObj.message, fromObj.statusCode));
  
      return this.client.messages.send({
        'message': mandrillMessage
      }, (function(result) {
        isSent = _.indexOf(["sent", "queued", "scheduled"], result[0].status) > -1
        var mandrillStat;
        if(isSent){
          mandrillStat = new MandrillSuccessStatus(result[0]);
          debug("-_-_ sent with mandrill _-_-");
          result.service = context;
          result.status = mandrillStat;
          debug(result);
          return callback(null, result);
        } else {
          mandrillStat = new MandrillErrorStatus(result[0]);
          debug("-_-_ FAILED with mandrill _-_-");
          debug(mandrillStat);
          return callback(mandrillStat);
        }
      }), function(e) {
        mandrillStat = new MandrillErrorStatus(e);
        debug("-_-_ FAILED with mandrill _-_-");
        debug(mandrillStat);
        return callback(mandrillStat);
      });
    }
  
    this.initialize()
  }
docs: /*=============================================================================
  
  Define Mandrill Service Provider
  
  =============================================================================