Merge changes from google's internal repository

Quite a few changes to collection subject, javadoc fixes, a few more shortcuts (assertAbout, assertWithMessage), additional Subjects, internal improvements like iterating only once on contains operations,  some message improvements, etc.  Details are in the individual commit messages.