Our collators are required to return -1, 0, or 1, tell the compiler so
it can use tests against a 0/1 register instead of the more complicated
negative/positive tests.

Minor restructuring so all the binary search loops look the same.
error: 'indx' may be used uninitialized in this function
[-Werror=maybe-uninitialized]