BUG: declare and use correctly self.unique_check
I am not sure I understood the last comment in [the previous pull request](https://github.com/pydata/pandas/pull/9526), but anyway this is a rebased version.

In the previous PR I proposed to simply make the `__get__` of `is_unique` directly rely on `self.initialized`, but I am no more so sure it is a good idea, since the current status is slightly redundant but clearer (and coherent with the use of "is_monotonic").
