Fix re-dirtying non-embedded hasMany after save

The same problem as #322 but with non-embedded hasMany arrays. We still need to update the original state after save in the non-embedded case.