cferris's Bionic tests found an issue in Scudo's malloc_iterate.
We were inclusive of both boundaries, which resulted in a Block that
was located on said boundary to be possibly accounted for twice, or
just being accounted for while iterating on regions that are not ours
(usually the unmapped ones in between Primary regions).
The fix is to exclude the upper boundary in iterateOverChunks, and
add a regression test.
This additionally corrects a typo in a comment, and change the 64-bit
Primary iteration function to not assume that BatchClassId is 0.