396 model tests

We already merged in 366 with Erin's tests and resolved the conflicts.

Cart_spec.rb is being weird still, create a new issue for this.