Error when unmountComponentAtNode receives non-node
v0.12.0-rc1
0.12 rc1 release materials

* blog post
* starter kit
Merge pull request #2364 from zpao/0.12rc-blog-post

0.12 rc1 release materials
Fix warning message for using React.DOM.* as type

Previously, this said 'Use the string "function() { [native code] }" instead.'.
Community round-up #23
Merge pull request #2356 from vjeux/roundup_23

Community round-up #23
Merge pull request #2368 from spicyj/use-the-string

Fix warning message for using React.DOM.* as type
Update 09.1-animation.md

Add note about ReactTransitionGroup, that any additional, user-defined, properties will be become properties of the rendered component.
And example how to render a `<ul>` with css class.
Fix JSDoc tag in ReactElement.js
Deprecate isValidClass

Fixes #2374
Merge pull request #2381 from shripadk/jsdoc-fix

Fix JSDoc tag in ReactElement.js
Merge pull request #2373 from genbit/docs-animation-props

Update 09.1-animation.md
[Docs] Remove most of @jsx

I kept some places intact (search for @jsx) because they require other bigger changes:

- ref-01-top-level-api.md
- grunt/tasks/npm.js
- old blog posts (don't change those)
- examples/ folder, as they have their own package.json that rely on old dependencies (node-jsx, reactify) that haven't upgraded to 0.12
avoid reading the scroll position twice
Merge pull request #2384 from sebmarkbage/deprecateisvalidclass

Deprecate isValidClass
Support but warn on key={null}

Fixes #2386.

Test Plan: jest
Merge pull request #2370 from chenglou/rm-school

[Docs] Remove most of @jsx
Merge pull request #2388 from spicyj/null-key

Support but warn on key={null}
Allow iterables in traverseAllChildren

This lets you use any kind of iterable as a container of react child elements. It also preserves keys when possible if the iterable is keyed.

 * Use an ES6 Map or Set to hold children.
 * Use an Immutable-js collection to hold children.
 * Use a function* which yields children.

Concretely, this removes the necessary conversion to JS objects if you're mapping over Immutable-js collections to get children, i.e.:

```
<div>
  {myImmutable.map(val => <span>{val}</span>).toJS()
</div>
```

Now we can remove the `toJS()` and the intermediate allocation along with it.

This also cleans up the traverseAllChildrenImpl method.