Fix bug for Models with different idAttributes returned from Collection#model function

I don't know of another way to get the prototype's `idAttribute` when `Collection#model` is a method that returns an instance of a model.

One other thing that we could do is add a `modelIdAttribute` key (or just `idAttribute` if it isn't too confusing) to a collection that you'd have to manually set in this case. It's not as pretty but it'll get the job done and not require a new object being created. Thoughts and/or improvements?