fixes a problem with each not working if the whole list is replaced

If you have some data like `m = new can.Map({list: [1,2]})` and a template like:

```
{{#each list}} ... {{/each}}
```

and you replace the list property with a new list like:

```js
m.attr('list', new can.List(["a","b"])
```

it would break mustache, this fixes it.