Move mountComponentIntoNode and setProps out of ReactComponent

This is part of moving more logic out of the base classes.

setProps, replaceProps etc. are not accessible from anything other than
ReactClass so we can safely move it to ReactCompositeComponent.

mountComponentIntoNode is tightly coupled to ReactMount. It's part of the
outer abstraction, the mount point, not the individual component.
Move _pendingX into ReactCompositeComponent

Since setProps can no longer be called on anything but composites, we can
move this complexity into ReactCompositeComponent.
Ensure that all internal instances have consistent properties

Use preventExtensions so that we can't add expando properties to internal
instances. This ensures that the hidden class is kept more consistent.
Unused variables
Merge pull request #2546 from sebmarkbage/cleanupinternals

Move more stuff out of ReactComponent