When you forget to extend `React.Component` you get the following error:

```
TypeError: Cannot call a class as a function
    at _classCallCheck (null.js:7:99)
    at Hello (null.js:11:5)
    ...react internals...
```

[[Example](http://react.jsbin.com/?html,js,console)]

It would be nice if in dev you could do a check for `Component.prototype.render` and if it exists, provide a better warning along the lines of:

```
Warning: Using a class with a render method as a function, did you forget to extend React.Component?
``` 

I believe it would happen in [ReactCompositeComponent.js](https://github.com/facebook/react/blob/b840229286ac2a82fa49553ce793cf7b953d1845/src/renderers/shared/stack/reconciler/ReactCompositeComponent.js#L248).
render() {
        return null;
      }
    }
    class Parent extends React.Component {
      render() {
        return <div><Child /></div>;
      }
    }
    spyOn(console, 'warn');
    var markup = ReactDOMServer.renderToString(<Parent />);
    
    var container = document.createElement('div');
    container.innerHTML = markup;
    ReactDOM.render(<Parent />, container);
    expectDev(console.warn.calls.count()).toBe(1);
    expectDev(console.warn.calls.argsFor(0)[0]).toContain(
      'render(): Calling ReactDOM.render() to hydrate server-rendered markup ' +
        'will stop working in React v17. Replace the ReactDOM.render() call ' +
        'with ReactDOM.hydrate() if you want React to attach to the server HTML.',
    );
    
    console.warn.calls.reset();
    container = document.createElement('div');
    container.innerHTML = markup;
    ReactDOM.hydrate(<Parent />, container);
    expectDev(console.warn.calls.count()).toBe(0);