Add warnings when accessing properties/methods on unmounted components

This creates a membrane around the React component prototype. It warns if you
try to access properties on the component before it's unmounted. Before it's
mounted, it should be considered a descriptor and not an actual instance.

The workaround, for unknown types, is to access the constructor using
component.type which has static methods on it.
Merge pull request #1055 from spicyj/jsx-transformer-ie8

Disable source maps when defineProperty is missing
Merge pull request #1021 from spicyj/close-finally

Set isInTransaction to false even if close throws
Refactor ReactMultiChild to not throw errors too

Missed these when I fixed up Transaction; with the exception of ReactErrorUtils, this should be everything.