@justinvdm's explanation from IRC:

```
fetch() calls parse(), which parses the response from the api, and then 'merges' the response with the current models using set(). I need to know the model's uuid at that stage, instead of setting 'id' in initialize() (which is called after the 'merging'), since it allows backbone to identify connections, and not create duplicates
```

i.e. setting the `id` attribute happens too late for Backbone to know to merge the identical models.