omitClose for all void elements

According to http://www.w3.org/TR/html5/syntax.html#void-elements the following elements should not specify end tags:

area, base, br, col, embed, hr, img, input, keygen, link, meta, param, source, track, wbr
[Docs] document optional param for renderComponentToString
Add polygon tag to transform

Fixes #1144.
Remove custom attrs properly when setting to null

I don't think this particular codepath was exercised at all (because all the callers call deleteValueForProperty) but this fixes a bug here nonetheless.
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.
Unbreak JSX comment comma fix
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.
Merge pull request #1242 from syranide/jsxcomfix

Unbreak JSX comment comma fix
Remove Shirtstarter as an example application.

We have unexpectedly had to shut Shirtstarter down, so it won't serve as a good React.js example any more unfortunately -- sorry for the documentation churn.
Merge pull request #1246 from ericflo/patch-1

Remove Shirtstarter as an example application.
Normalize whitespace for transformed JSX code
Add svg text-anchor attribute.
Update jasmine-support.js

fix typo in multiple error messages.
Merge pull request #1181 from lrowe/patch-5

omitClose for all void elements
Community Round-up #18
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,'