I think the boolean checking should be moved to `_unpack_index`, so that it is guaranteed the result is always either integers, slices, or arrays of integers. There's currently no case in the downstream code that deal specially with boolean indices, so doing this will simplify things (and reduce the number of public functions in IndexMixing).