code: function(models, out)
    {
      var target = out || this.cloneEmpty();
  
      for (var i = 0; i < this.length; i++)
      {
        var a = this[ i ];
        var key = a.$key();
        var exists = false;
  
        if ( models instanceof ModelCollection )
        {
          exists = models.has( key );
        }
        else
        {
          for (var k = 0; k < models.length && !exists; k++)
          {
            var modelKey = this.buildKeyFromInput( models[ k ] );
  
            exists = (key === modelKey);
          }
        }
  
        if (!exists)
        {
          target.push( a );
        }
      }
  
      return target;
    }
docs: Documented in Collection.js
  
  @see Rekord.ModelCollection#buildKeyFromInput