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.
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
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
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?)
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
Use setImmediate to defer value restoration

Depends on #1758.

Fixes #1698.

Previously, controlled components would update too soon when using something like ReactLayeredComponentMixin (i.e., before the layer's updates could propagate from the parent), causing the cursor to jump even when always updating the new model value to match the DOM state. With this change, we defer the update until after all nested updates have had a chance to finish, which prevents the cursor from misbehaving.

Also cleaned up the logic around updating a bit -- the .value and .checked updates in ReactDOMInput weren't being relied on at all so I removed them and opted for a simple forceUpdate instead. I also got rid of _isChanging which hasn't been necessary since the introduction of update batching.

Test Plan: Tested the example in http://jsfiddle.net/Bobris/ZZtXn/2/ and verified that the cursor didn't jump. Changed the code to filter out numbers and verified that the field prevents typing numbers (attempting to do so still causes the cursor to jump to the end). Also verified that controlled and uncontrolled radio buttons, textareas, and select boxes work.
HAS_SIDE_EFFECTS properties must compare as property type
Use .bind when autobinding

This eliminates all of the `boundMethod` frames from call stacks when debugging and as far as I know should behave the same otherwise.

Test Plan: jest
Merge pull request #1770 from eins78/master

Also list <form> in error message as possible culprit