https://codesandbox.io/s/40j50607y0

Rendering a component like:

```js
const Foo = () => <React.Fragment />
```

Throws the error:

> Foo(...): Nothing was returned from render. This usually means a return statement is missing. Or, to render nothing, return null.

The error is confusing because clearly `Foo` _is_ returning a value. I don't know if we want to support rendering empty fragments, but in any case this error is confusing.

If this isn't allowed it should explicitly call out that a component cannot return a fragment with no children.

cc @gaearon 
function updateSlot(
    returnFiber: Fiber,
    oldFiber: Fiber | null,
    newChild: any,
    expirationTime: ExpirationTime,
  ): Fiber | null {
    /
    const key = oldFiber !== null ? oldFiber.key : null;
    if (typeof newChild === 'string' || typeof newChild === 'number') {
      /
      /
      /
      if (key !== null) {
        return null;
      }
      return updateTextNode(
        returnFiber,
        oldFiber,
        '' + newChild,
        expirationTime,
      );
    }
    if (typeof newChild === 'object' && newChild !== null) {
      switch (newChild.$$typeof) {
        case REACT_ELEMENT_TYPE: {
          if (newChild.key === key) {
            if (newChild.type === REACT_FRAGMENT_TYPE) {
              return updateFragment(
                returnFiber,
                oldFiber,