Change ReactPropTypes invariant's to console.error.

This changes it so that PropTypes logs to the console via `console.error` instead of throwing through an invariant. This means that PropType-validation can be stripped out in production to potentially speed up React apps. Since the code only logs to the console from now on, the logic that is followed is the same in prod and dev and actual errors will come up the same way.

Currently this is gated by __DEV__ but we might want to add another magical constant.

90 % of the time making this was to fix all the unit tests to expect `console.error` calls instead of expecting the functions to throw.