Fix ModifyCardsAtomic comment

The function doesn't behave as it was previously specified. Its
actual semantics are arguably ugly, but that doesn't really seem to
break anything. Just specify what it really does, and add DCHECK
to validate previously undocumented assumption.

Deduplicate the comment.

Update card_table_test, so it no longer invokes ModifyCardsAtomic
with a now disallowed visitor. This was OK, because it's applied
to a card table containing no zeroes, and hence the misbehaving
visitor didn't matter. Now we check.

Test: Treehugger.
Change-Id: Id1ba1cb39c709a33c362d4e386ddcb065bd39049
3 files changed