Remove superfluous classID from DOMAttributeNames
Add manifest to HTMLDOMPropertyConfig
Rename ReactUpdates.setImmediate to 'asap'

Per https://github.com/facebook/react/pull/1554#issuecomment-57243842.

Test Plan: jest
Use strings as the type for DOM elements

This makes ReactDOM a simple helper for creating ReactElements with the string tag as the type. The actual class is internal and created by instantiateReactComponent. Configurable using injection.

There's not a separate class for each tag. There's just a generic ReactDOMComponent which could take any tag name.

Invididual tags can be wrapped. When wrapping happens you can return the same tag again. If the wrapper returns the same string, then we fall back to the generic component. This avoids recursion in a single level wrapper.
Merge pull request #2287 from sebmarkbage/stringelements2

Use strings as the type for DOM elements
Update React JSX Transforms

* Extract JSXDOM into separate transform
* Rename lower case variables in JSX to upper case
* Drop React.DOM docblock, use string tags instead
Rename lower case variables in JSX to upper case

We're trying to move to a convention where lower-case variables on JSX are always HTML/SVG tags rather than variables in scope. See:

http://fb.me/react-jsx-lower-case

Therefore, this diff renames existing uses to upper case variables.

This throws an error on all these files, so I manually go rename all the variables. I then run lint to ensure that the rename doesn't leave any undeclared variables.
Don't use React.DOM

I grepped for uses of React.DOM. This is going to be a set of helper functions
to generate ReactElements without JSX.

They're not classes so they cannot be used where a React class is expected.

Since we always use JSX, we should have no internal use for these helpers.
We can use strings instead.
Start warning when React.DOM.x is passed into JSX

React.DOM is becoming helper factories to generate ReactElements. They're not
classes. It will be ok to call them directly as functions, but not to use them
where a class is expected.
Renamed Descriptor -> Element

We've decided on a new naming convention for ReactDescriptor. It's now
called ReactElement, which is a subset of the ReactNode union type.
Merge pull request #2300 from sebmarkbage/descriptorstoelements

Renamed Descriptor -> Element
Merge pull request #2276 from spicyj/asap

Rename ReactUpdates.setImmediate to 'asap'
Merge pull request #2238 from syranide/noclassid

Remove superfluous classID from DOMAttributeNames
Merge pull request #2252 from syranide/htmlmanifest

Add manifest to HTMLDOMPropertyConfig
Renamed ReactDescriptor-test

I forgot to rename the test.
Merge pull request #2305 from sebmarkbage/missingrename

Rename ReactDescriptor followup
Remove ReactBrowserComponent dependency from ReactTextComponent

It's no longer used as of #1598, which just missed the require.

Test Plan: build, jest
Use Object.assign instead of merge, mergeInto, mixInto and copyProperties

This makes it easier to contribute without having to learn a bunch of
slightly different helpers and remember their slightly different
signatures and semantics.

We'll probably start using ES7 spread properties instead of merge in the
future when at least one more transpiler supports it.
Merge pull request #2303 from sebmarkbage/dropmerge

Use Object.assign instead of merge, mergeInto, mixInto and copyPropertie...
Drop the @jsx docblock from unit tests

This is no longer necessary in our transforms.