add chinese translation for 01-why-react.md
fix some translation error
fix some translation error
Merge branch 'master' of github.com:rayqian/react

Conflicts:
	docs/docs/01-why-react.zh-CN.md
fix `(`
make translation better
add translation for getting-started.md
change some translation words
Add React.batchedUpdates to public API

Fixes #906.
Don't escape slash; it's unnecessary

Fixes #1444.

Test Plan: grunt fasttest
Don't double-escape style names

Previously we were escaping both in createMarkupForStyles and then in createMarkupForProperty; now we escape only in the latter (otherwise the hypothetical style name `b&ckground` would become `b&amp;amp;ckground`).

Test Plan: grunt fasttest
warn when shouldComponentUpdate() returns undefined
Add harmony transform support in browser (Fixes GH-1420)

I implemented this by checking for `type="text/jsx;harmony"`, since this
has a bit of a cleaner implementation rather than parsing a JSON object
out of a data attribute. If in the future there are other options to
pass, it would make sense to move to a system like that.

Along with adding support, there is also a new example added that's
the basic-jsx example with Harmony syntax.
Change harmony option to "harmony=true"
Add sourceMap option to react-tools transform

Allow tools like grunt-react to include inline source maps in the
generated JavaScript. Browserify can then combine these source maps when
bundling everything together.

Usage:

```
var transform = require('react-tools').transform;
var output = transform(jsxContent, {
  sourceMap: true,
  sourceFilename: 'source.jsx'
});
```

The `output` will have an inline source map comment appended.
Rebased on master
Merge upstream changes
Apply component and mixins specs deterministically
Fixes #1589.
Update todo example. fixes 'Create' that shouldn't happen

Currently, an `onBlur` creates a new todo on `TodoTextInput`. This makes sense for existing items but not for new items. I.e consider the following: 

1. cursor on new item ("What needs to be done?")
2. click 'x' on the first item. 

This results in two actions being fired: 

1. TODO_CREATE, with an empty string as 'text'
2. TODO_DESTROY

The proposed fix doesn't send a TODO_CREATE if `text.trim() === "")`
Revert #1536

It's causing issues in product code. Reverting until it can be
investigated further.