Refactor `Series.is_compatible`
This PR refactors the Series.is_compatible
method by separating internal logic into two functions, and then improve the tests. This also adds one small improvement that irregular Series
can now be compatible if their X-index arrays match identically.