Using `Backbone.Collection#set` to avoid losing reference to existing nested collections.

Backbone 1.0 introduced the method `Backbone.Collection#set` that will add/remove/merge collection models as needed. This works better than reseting the collection by always creating a new one.

When setting raw attributes on a model with a nested collection you can use this so that you don't lose references on nested models and collections.

For example:

```javascript
var dependent1Attrs = {id: 1, fname: "Barney"},
    dependent2Attrs = {id: 2, fname: "Steve"},
    dependent3Attrs = {id: 3, fname: "Bob"}

emp.set({"dependents": [dependent1Attrs, dependent2Attrs]}

var dependent1 = emp.get("dependents").get(1),
    dependent2 = emp.get("dependents").get(2)

dependent1.on('remove', function () { console.log('this will be called') })

dependent2.on('remove', function () { console.log('this will not be called') })

dependent2.on('change', function () { console.log('this will not be called') })

dependent2Attrs.fname = "SteveJobs"

emp.set({"dependents": [dependent2Attrs, dependent3Attrs]}

emp.get("dependents").get(1) // == undefined
emp.get("dependents").get(2) // == dependent2
emp.get("dependents").get(3) // == dependent3
```