title: backbone collection fetch() returns one record only
body: <p>I am trying to fetch list of objects from server, the collection accepts the first record and ignores the rest.</p>
  
  <p>the response from the server is of type <code>application/json</code></p>
  
  <pre><code> [{"id":1,"name":"A"}, 
    {"id":2,"name":"B"}, 
    {"id":3,"name":"C"}]
  </code></pre>
  
  <p>in client side,</p>
  
  <pre><code> var collection = new Backbone.Collection;
   collection.url = 'url_to_the_resource';
  
   collection.fetch();
   console.log( collection.toJSON());
  </code></pre>
  
  <p>the output is</p>
  
  <pre><code> [{"id":1,"name":"A"}]
  </code></pre>
  
  <p><strong>edit</strong></p>
  
  <p>I call log when the collection is ready, i.e. after the asynchronous call is complete as follows:</p>
  
  <pre><code>collection.fetch().done( function() {
    console.log( collection.toJSON() );
  });
  </code></pre>
  
  <p>and still getting one record. I have also checked backbone.js source code, and found the following at line <code>682</code></p>
  
  <pre><code>    // If a duplicate is found, prevent it from being added and
      // optionally merge it into the existing model.
      if (existing = this.get(model)) {
  </code></pre>
  
  <p>and added a logging right after that line, and found that backbone merges all models, why?</p>