Share reconcile transaction in batched updates

Should make #1350 better and will also take away any performance hit from #1157.

Test Plan:
grunt test
Adds svg mask and pattern dom components
Added support for itemscope, itemtype, itemprop.
Updated documentation.
Use camelCase and declare MUST_USE_ATTRIBUTE.
Add support for JSX member expressions <React.DOM.div />
Adds svg pattern and mask components
Stylistic changes.
Fix minor typo
Update flux-todo-list.md

Fix broken link to todomvc-flux repo

@spicyj cla signed
Start Flux video at 10m21s
Merge pull request #1503 from dybskiy/patch-2

Update flux-todo-list.md
Add missing emitChange() to Flux docs
Preemptively error when required ES5 shim/shams are not available
todomvc-flux: Depend on uglify-js, not uglifyjs

Fixes #1505.

Confusingly, the uglify-js package provides the `uglifyjs` binary and `npm run-script build` didn't work if uglify-js wasn't installed globally; now it does.
Update Flux README to point at website post/docs
Merge pull request #1516 from syranide/es5err

Preemptively error when required ES5 shim/shams are not available
Merge pull request #1504 from spicyj/flux-621

Start Flux video at 10m21s
Make perf show all exclusive time, not just render time.

Currently require('ReactDefaultPerf').printExclusive() shows render
time and aggregate componentMount time.

This makes it show exclusive mount time by tracking a stack.
Merge pull request #1358 from spicyj/one-transaction

Share reconcile transaction in batched updates