Ship CJS modules instead of browserified build

It turns out that if you try to browserify a file requiring react-tools,
it doesn't work. This is because browserify just visits the require
statements in the file and looks for files in that path.
./ReactCompositeComponent doesn't exist and that's the point that fails.
So the fix is to actually ship each of our CJS modules as individual
files like browserify expects. This should have no negative side effects
- we still only export React (though the rest of our modules are now
actually accessible, which might make it easier to do more with the
module).

The other change here is to move source-map to dependencies since it's
required in the transform code.

Test Plan:

```
$ npm pack .
$ cd /tmp
$ npm install path/to/react-tools-0.3.1.tgz
$ echo "require('react-tools')" > test.js
$ browserify test.js
```
Merge pull request #34 from zpao/npm-ship-modules

Ship CJS modules instead of browserified build
v0.3.2

Also some tweaks to package.json details.
Fix live_editor.js usage of class=
Merge pull request #36 from jeffreylin/master

Fix live_editor.js usage of class=
Make the bin/jsx source and output directories configurable.
Use bin/jsx and browserify to build a jasmine bundle.
Polyfill Function.prototype.bind during tests.
Fix some silly uses of Function.prototype.bind in jasmine-support.js.
Expose test modules for requirement.
Silence tests unsupported in PhantomJS.

These tests can still be run in the browser using `grunt test --debug`.
Run each test in an <iframe>.
Create testing <iframe>s dynamically, according to grunt config.