Fix rollback for hasMany relationships that aren't part of the transaction

Currently when using DS.RESTAdapter, hasMany relationships have inconsistent behavior between creation and rollback. Specifically, records will be added to hasMany relationships when they are created, but not removed when they are rolled back. E.g.:

```javascript
var transaction = store.transaction();
var comment = transaction.createRecord(Comment, {post: post});

post.get('comments'); // will correctly return [comment]

transaction.rollback();

post.get('comments'); // will still incorrectly return [comment] when it should return []
```

This PR fixes this behavior. It also fixes some typos in the relationship change code.