Summary:
Currently, `ReactUpdates` updates dirty components in increasing order of mount depth. However, mount depth is only relative to the component passed into `React.render`. This breaks down for components that invoke `React.render` as an implementation detail because the child components will be updated before the parent component.

This fixes the problem by using the order in which components are mounted (instead of their depth). The mount order transcends component trees (rooted at `React.render` calls).

Reviewers: @sebmarkbage @zpao

Test Plan:
Ran unit tests successfully:

```
npm run jest
```
Merge pull request #2570 from yungsters/updates

Update Dirty Components in Mount Ordering
Replace `mountDepth` with `isTopLevel`

Summary:
After #2570, `mountDepth` is only used to enforce that `setProps` and `replaceProps` is only invoked on the top-level component. This replaces `mountDepth` with a simpler `isTopLevel` boolean set by `ReactMount` which reduces the surface area of the internal API and removes the need to thread `mountDepth` throughout React core.

Reviewers: @sebmarkbage @zpao

Test Plan:
Ran unit tests successfully:

```
npm run jest
```
Merge pull request #2571 from yungsters/cleanup

Replace `mountDepth` with `isTopLevel`
Removed context paremeter to renderToString/renderToStaticMarkup.
Merge pull request #2565 from jsfb/fixwhitespace

Removed context paremeter to renderToString/renderToStaticMarkup.
Separate Child Reconciliation Step from Diffing

This separates the reconciliation step of children into a separate module.
This is the first step towards prerendering.

The stateful instances are reconciled and put into a "rendered children"
set. Updates creates a new of these sets. These two sets are then diffed
to create insert/move/remove operations on the set.

The next step is to move the ReactChildReconciler step to before the
native DOM component. That way it's possible to rely on child
reconciliation without relying on diffing.
Merge pull request #2567 from sebmarkbage/childrenreconciler

Separate Child Reconciliation Step from Diffing
Update variable name and doc type to be accurate

Test Plan: Crossed fingers.
Finish renaming renderComponent -> render

Test Plan: jest
Merge pull request #2581 from spicyj/rm-elt-docs

Update variable name and doc type to be accurate
Merge pull request #2582 from spicyj/rendercomponent

Finish renaming renderComponent -> render
Add example for how to use `style` properly

Test Plan: jest
Merge pull request #2583 from spicyj/style-example

Add example for how to use `style` properly
react.js conf updates
better wording thanks to @jwalke
Mention that talks will be recorded
Use warning module for context warning instead of invoking console.warn and monitorCodeUse directly.  Depends on https://phabricator.fb.com/D1695279
Merge pull request #2579 from jsfb/context-to-warning-module

Use warning module for context warning instead of invoking console.warn ...
Add additional field for ART reconciler

ART, just like MultiChild adds an expando property to manage it's diffing
state. This is ugly and bad. We should be moving this state outside the
component for use by the diffing algorithm. This state is not needed by
components nested in composites, and varies by diffing algorithm.

It sucks that I have to add it to every component just to support ART,
but that's the quickest solution, other than disabling preventExtensions.

At least now we know that it sucks.