code: function create(body, cb) {
    var validates = Schema(body);
  
    if(!validates) {
      return cb(new exceptions.BadRequest());
    }
  
    crypto.encode(body.password, function(err, encoded) {
      if(err) { return cb(err); }
  
      body.password = encoded;
      body.created_at = new Date();
  
      var q = qb.insert(body);
      db.getClient(function(err, client, done) {
        client.query(q[0], q[1], function(err, r) {
          if(err) {
            if(err.code == 23505) {
              err = new exceptions.AlreadyExists();
            }
            cb(err);
            done(err);
          } else {
            cb(null, r.rows[0]);
            done();
          }
        });
      });
    });
  }
docs: Creates a new user.
  
  `cb` is passed with the newly created user or:
  
  * exceptions.BadRequest: if `body` does not satisfy the schema
  * exceptions.AlreadyExists: if a token with the same `username` already exists
  
  @param {Object} body
  @param {Function} cb