Internal sync from Google's repository.

Quite a few changes to ComparableSubject, IterableSubject, and StringSubject.