PERF: IntervalArray.argsort
IntervalIndex.argsort has a more performant implementation (at least for default kwargs).  This just moves that up to IntervalArray.

```
In [2]: idx = pd.IntervalIndex.from_breaks(range(10**4))

In [3]: arr = idx._data

In [4]: %timeit arr.argsort()
24.5 ms ± 458 µs per loop (mean ± std. dev. of 7 runs, 10 loops each)     # <-- master
79 µs ± 1.64 µs per loop (mean ± std. dev. of 7 runs, 10000 loops each)   # <-- PR
```
do we have sufficient asv's for this? > do we have sufficient asv's for this?

no, but itll be relatively easy to add mroe since there is a SortIntegerArray class that has a time_argsort, we can extend that