Use update internally in Collection#add 

Per the discussion on [#2261](https://github.com/documentcloud/backbone/pull/2261/files#r2983581), this is a first stab at offloading the model manipulation logic from `Collection#add` to a more centralized change hub at `Collection#update`.

All tests currently pass, but if you can think of any that would break in this implementation, let's be sure to account for it.