The behavior of ConvertBits() has been simplified in D572 from it's
original form, and would return `false` when there is any remaining bit
and padding is disabled.
This diff relaxes this requirement to be in par with the original
behavior (see
https://github.com/bitcoin/bitcoin/pull/11167/files#diff-b5877ad42a7dbee9a99cbf0596977fd9).
The call will now returns `true` if the remaining bits are all zeros.
This is a prerequisite for backporting PR11630.
The cash address decoding is updated to now check the output of
`ConvertBits()`