Fix #745 - simd::compare_less QOI

compare_less algorithm on SSE/AVX targets was suboptimal as it
was reversing bits after computing the bitmask while reversing
elements using shuffle then compute bitmasks is more efficient
, lead to better inlining of compare_less based code and some
code refactoring using reverse and hmsb.