My application crashes IE9 when I upgrade to React v15.2.0! It works fine with v15.1.0 and all earlier versions.

My diff looks like this

```
package.json
 -    "react-addons-perf": "15.1.0",
 +    "react-addons-perf": "15.2.0",
 -    "react-addons-shallow-compare": "15.1.0",
 +    "react-addons-shallow-compare": "15.2.0",
 -    "react-addons-test-utils": "15.1.0",
 +    "react-addons-test-utils": "15.2.0",
 -    "react": "15.1.0",
 +    "react": "15.2.0",
 -    "react-addons-css-transition-group": "15.1.0",
 +    "react-addons-css-transition-group": "15.2.0",
 -    "react-addons-transition-group": "15.1.0",
 +    "react-addons-transition-group": "15.2.0",
 -    "react-dom": "15.1.0",
 +    "react-dom": "15.2.0",
```

Below is a GIF of the crash, I recorded this using BrowserStack (Win7, IE9). I start the recording with Google loaded and dev tools open, I then navigated to my apps URL. As you can see IE9 just crashes hard with nothing logged to console. All other browsers load my app just fine, this only seems to crash IE9!

![crash](https://cloud.githubusercontent.com/assets/456400/18810916/7694bfd0-829a-11e6-897d-4b70df1972a2.gif)

Did you guys drop support for IE9 in 15.2.0? If not, any ideas what might be causing this?

var node = inst._hostNode;
  if (node) {
    delete node[internalInstanceKey];
    inst._hostNode = null;
  }
}
/**
 * Populate `_hostNode` on each child of `inst`, assuming that the children
 * match up with the DOM (element) children of `node`.
 *
 * We cache entire levels at once to avoid an n^2 problem where we access the
 * children of a node sequentially and have to walk from the start to our target
 * node every time.
 *
 * Since we update `_renderedChildren` and the actual DOM at (slightly)
 * different times, we could race here and see a newer `_renderedChildren` than
 * the DOM nodes we see. To avoid this, ReactMultiChild calls
 * `prepareToManageChildren` before we change `_renderedChildren`, at which
 * time the container's child nodes are always cached (until it unmounts).
 */
function precacheChildNodes(inst, node) {
  if (inst._flags & Flags.hasCachedChildNodes) {
    return;
  }
  var children = inst._renderedChildren;
  var childNode = node.firstChild;
  outer: for (var name in children) {
    if (!children.hasOwnProperty(name)) {