Add polygon tag to transform

Fixes #1144.
included link to React devtools in tooling-integration. fixes #791
Avoid JSX in ReactCSSTransitionGroup code

Supposedly we want these to be plain JS.
Switched from browserify to pure-cjs bundler.
Optimizations and fix for JSXTransformer build.
Dropped dependency on emulation of Node.js native modules.
Added deamdify step for JSXTransformer build.
Renamed `browserify` tasks/configs to `cjs`, updated pure-cjs to 1.9.0 for better build speed.
CommonJS builder config to Grunt style for easier handling and readability.
Add svg text-anchor attribute.
Add support for {harmony: true} to react-tools

```
require('react-tools').transform(code, {harmony: true});
```

now enables all the harmony es6 transforms that are supported.

This is modeled after https://github.com/facebook/react/blob/master/bin/jsx#L17-L23
Reassign variable of rendered component

The component that gets passed into renderComponent isn't guaranteed to be the
instance that gets mounted. We want to clone the instance.

Unit tests need to reason about the mounted instance. The first code mod changes:

  ReactTestUtils.renderIntoDocument(<identifier>)

into

  <identifier> = ReactTestUtils.renderIntoDocument(<identifier>)

Using this scripts:

  scripts/bin/codemod -m -d ~/www --extensions js \
   '^(\s*)ReactTestUtils\.renderIntoDocument\(\s*([$a-zA-Z0-9_]+)\s*\)' \
   '\1\2 = ReactTestUtils.renderIntoDocument(\2)'

In the second case I do the same for React.renderComponent. However, there are
alot more unnecessary matches so I only codemod if the same identifier occurs
later in the file.

  scripts/bin/codemod -m -d ~/www --extensions js \
   '^(\s*)React.renderComponent\(\s*([$a-zA-Z0-9_]+)\s*?,(.*?\n?.*?\s\2\b)' \
   '\1\2 = React.renderComponent(\2,\3'

And one more for ReactMount.renderComponent used by internals.

  scripts/bin/codemod -m -d ~/www --extensions js \
   '^(\s*)ReactMount.renderComponent\(\s*([$a-zA-Z0-9_]+)\s*?,(.*?\n?.*?\s\2\b)' \
   '\1\2 = ReactMount.renderComponent(\2,\3'

This still matches many unnecessary cases where the second occurance of the
identifier is a redeclaration or comment. But this code mod doesn't hurt in
those cases.

Finally I have to do the same for:

  this.<identifier> = React.renderComponent(this.<identifier>,

This is a common pattern for production code but not tests. Some of these call
sites will likely break when we move to true descriptors.

  scripts/bin/codemod -m -d ~/www --extensions js \
   '^(\s*)React.renderComponent\((\s*)this\.([$a-zA-Z0-9\_\.]+)\s*?,' \
   '\1this.\3 = React.renderComponent(\2this.\3,'
Fix some invalid uses of instances

Breaking this out of the other code mod.
More actionable error message for <tbody> and nested <p>

This bites people all of the time. Until we have a better solution, let's just make the error message more actionable (most people don't know how the DOM
gets unexpectedly mutated).
Fix ref behavior for remounting

I'm thinking that setting up `this.refs` in `mountComponent` is better than `construct`. Followed the same pattern as `ReactComponent.Mixin` and nulling out
the value in `construct` and setting it to its initial value in `mountComponent`.
Merge pull request #1262 from vjeux/harmony-react-to

Add support for {harmony: true} to react-tools
Merge pull request #1229 from spicyj/no-jsx

Avoid JSX in ReactCSSTransitionGroup code
Merge pull request #1248 from asolove/svg-text-anchor

Add svg text-anchor attribute
Merge pull request #1226 from LilyJ/master

included link to React devtools in tooling-integration. fixes #791
Renamed commojs task to bundle, added failing build if bundler failed.
Merge pull request #1193 from spicyj/jsx-polygon

Add polygon tag to transform
Merge pull request #1234 from RReverser/pure-cjs

Switched from browserify to pure-cjs bundler.
Revert "Merge pull request #1234 from RReverser/pure-cjs"

This reverts commit 7987e6a51dd6e33d6736e98f038d4ace545feabe, reversing
changes made to d88d4796854569e9352a6d81489262f6566b75b4.