Adds optional callback to `setState`

This commit adds an optional callback as a second argument to
`setState`, to be called after `setState` runs.

We never guarantee synchronous execution of `setState`, and as per
@phunt, we don't want to make that guarantee because we may eventually
batch calls to `setState`.  @jwalke agrees with him.
Updated docs and check for truthiness

Change api docs to reflect presence of the new argument.  In addition,
callback was change to require only a "truthy" value.
markdown syntax

Small problem with markdown syntax in syntax-highlighted block.
Add callbacks to all public-facing state/props methods

All public facing {set,replace,force}{props,state} methods now support
callbacks.
Merge branch 'master' into async-state
Add figure and figcaption elements to React.DOM (already supported by jsx.)
Merge pull request #147 from lrowe/patch-1

Add figure and figcaption elements to React.DOM (already supported by jsx)
Batch together calls to setState, setProps, etc

The end of ReactUpdates-test.js is probably most illuminating for seeing how this works.
Blog: Autobind by Default

Kicking off the series of posts previewing v0.4
Upgrade Commoner to --watch directories instead of individual files.

This behavior is new in Commoner v0.8.3, following the incorporation of
@jeffreylin's `DirWatcher` implementation:
https://github.com/jeffreylin/jsx_transformer_fun/blob/master/dirWatcher.js

Watching directories instead of files reduces the total number of open
files, and copes better with editors that save files by deleting and then
immediately recreating them.

Closes #60.
Closes #71.
Add blockquote tag (already in JSX)
Remove autobinding warning

I think this warns on many legitimate use cases. We should get rid of it I think.
Merge pull request #151 from spicyj/bq

Add blockquote tag (already in JSX)
Merge pull request #115 from spicyj/async-state

Batch together calls to setState, setProps, etc
Merge pull request #150 from benjamn/commoner-dir-watcher

Upgrade Commoner to --watch directories instead of individual files
Update syntax.md

Some inconsistencies pointed out in FB comments
Introduce a supported way to slice children

Introduces a counterpart to mapChildren. It excludes empty children just as
mapChildren for compatibility. With might introduce something like
sliceChildrenIncludingEmptyValues at some point.
Injectable DOMProperty configs, and add back ID attribute

https://github.com/facebook/react/pull/141
Fix ChangeEventPlugin for IE8 and IE9

This fixes a bug with `ChangeEventPlugin` in IE8 and IE9. The extend of this bug includes:

 - On IE8, not firing `onChange` immediately after `value` of an input is changed.
 - On IE9, not firing `onChange` when backspacing.
Faster Listener Deletion

Whenever a component is unmounted, we delete all listeners that might have been attached. This sucks because most applications, Facebook included, do not use every listener. There's a lot of wasted computation, especially if many components are mounted and unmounted.

This changes `deleteAllListeners` to more delete listeners more efficiently.