function assertThat(subject, extraArgCatcher) {
    if (extraArgCatcher !== undefined) {
        fail('Extra assertThat arg');
    }
    return new AssertionSubject(subject, 'assertThat #' + assertionSubjectIndexForNextTest);
}
Returns an assertion subject for the given value, which can be fluently extended with conditions like "isEqualTo".
@param {*} subject
@param {=undefined} extraArgCatcher
returns {!AssertionSubject}