Only stop if the transition on this element ended

This way it doesn't end when some random element elsewhere on the page has an ending transition.

It must be noted that this is not a complete fix. If you have multiple transitions on the element, it still ends when the first ends.

I ran into this not working (the transition ends almost immediately, because some unrelated transition ends). This fixes it for me, but I was wondering whether this cornercase was considered, and whether the other cornercase (multiple transitions) was considered.

I think it's very hard to get this correct, and think it might be better to make the timeout explicit, or at least allow to set it explicit, and fall back to this behaviour. But I'm really interested in feedback on this one.
Add React.batchedUpdates to public API

Fixes #906.
Guard against contentEditable with children props
Added event parameter
Make sure it works when we have no css transitions
Apply component and mixins specs deterministically
Fixes #1589.
Warn when using hyphenated style property names
Simplify composite lifecycle state

We now forbid calling setState or forceUpdate if any component's render function is higher in the stack, not just the component you're trying to update. (We do this already now for React.renderComponent and React.unmountComponentAtNode.)

This also has the advantage that we can now remove CompositeLifeCycle.RECEIVING_STATE, making _compositeLifeCycleState easier to reason about (not to mention that RECEIVING_STATE was a confusing name) and making it possible to remove a try/finally from the render path which might help with perf.
Also list <form> in error message as possible culprit
add translation for 02-displaying-data.md and change next link in 01-why-react.zh-CN.md
fix some translation bug
Fix IE8 potentially throwing during restoreSelection
add picture element and related attributes
add picture to xjs.knownTags
Add note about key prop being excluded by cloneWithProps

Whilst this is intentional behaviour (see #1274), it is not documented anywhere, so it is worth mentioning.

It would also be nice if React issued a warning to console if a cloned component loses its key (as this will silently break reconciliation?)
getModifierState incorrectly exposed as SyntheticMouseEvent.getEventModifierState
Use faster cached regexps for tests in setInnerHTML
JSXTransformer, stricter parsing of script type
follow docs convention for notes
Add ReactUpdates.setImmediate for async callbacks

Callbacks passed to this setImmediate function are called at the end of the current update cycle, which is guaranteed to be asynchronous but in the same event loop (with the default batching strategy).

This is useful for new-style refs (#1373, #1554) and for fixing #1698.

Test Plan: jest