Coalesce warnings for deprecated lifecycle hooks and print single message after reconciliation (rather than one per component-type).

Relates to PR #12028 and [this comment](https://github.com/facebook/react/pull/12028#discussion_r162420575).
didFatal = true;
        continue;
      }
      
      
      const boundary = captureError(failedWork, error);
      invariant(
        boundary !== null,
        'Should have found an error boundary. This error is likely ' +
          'caused by a bug in React. Please file an issue.',
      );
      if (didFatal) {
        
        
        continue;
      }
      didError = false;
      error = null;
      if (__DEV__) {
        invokeGuardedCallback(
          null,
          renderRootCatchBlock,
          null,
          root,
          failedWork,
          boundary,
          expirationTime,
        );
        if (hasCaughtError()) {
          didError = true;