title: mongoose doc.save fails without error in schema method
body: <p>Using mongoose i am doing:</p>
  
  <pre><code>var postSchecma = mongoose.Schema({
  title: String,
  body: String,
  link: String,
  voting: {
      has: {
          type: Boolean,
      default:
          false
      },
      canVoteFor: [mongoose.Schema.Types.Mixed],
      votedFor:{},
      voteDates:{}
  },
  comments: [mongoose.Schema.Types.Mixed],
  date: {
      type: mongoose.Schema.Types.Mixed,
  default:
      new Date().getTime()
  }
  }, {
      strict: false,
      safe:true
  })
  </code></pre>
  
  <p>and</p>
  
  <pre><code>postSchecma.methods.vote = function(voteFor, callback) {
  var self = this;
  if(self.voting.canVoteFor.indexOf(voteFor) &lt; 0) {
      callback(new Error('Error: Invalid Thing To Vote For'));
      return;
  }
  this.voting.voteDates[voteFor].push(new Date().getTime())
  this.voting.votedFor[voteFor]++
  s = this;
  this.save(function(err) {
      if(err) {
          callback(err)
      }
      console.log(err);
      console.log("this:"+ s);
      callback(s)
  })
  }
  </code></pre>
  
  <p>in postSchecma.methods.vote the value of this.voting.votedFor[voteFor] is correct. but when I query the db it is the old value. if it helps i am using the db in 2 files and the methods may not be exact duplicates.
  I also know it is something with mongoose because I can change the record to a different value with a mongoDB GUI and it works fine.
  let me know if you need any more info,
  thanks,
  Porad</p>