title: KOValidation get observable value, $index(), $data etc. in the error message
body: <p>I have the following JS object:</p>
  
  <pre><code>var TournamentPlayer = function (PlayerName, Handicap, Nationality) {
      var self = this;
  
      self.PlayerName = ko.observable(PlayerName).extend({
          required: {
              message: 'Player No. ' + $index() + ' is required.' // How to get $index() here?
          }
      });
      self.Handicap = ko.observable(Handicap);
      self.Nationality = ko.observable(Nationality);
  }
  </code></pre>
  
  <p>I need to capture details of four players where <code>PlayerName</code> is required, I am using the following code to add empty <code>TournamentPlayer</code> objects in the parent JS object:</p>
  
  <pre><code>self.TournamentPlayers.push(new TournamentPlayer('', 0, ''));
  self.TournamentPlayers.push(new TournamentPlayer('', 0, ''));
  self.TournamentPlayers.push(new TournamentPlayer('', 0, ''));
  self.TournamentPlayers.push(new TournamentPlayer('', 0, ''));
  </code></pre>
  
  <p>I want to get <code>KO</code> data like the <code>observable</code> value, <code>$index()</code>, <code>$data()</code> etc in the <code>KOValidation</code> <code>extend</code> function, how can I do this?</p>