BUG: CategoricalBlock shift GH9416
Should resolve #9416.

CategoricalBlocks always seem to have ndim=1, even if multiple
categoricals are in a frame with the same categories. This simplifies
the axis shift logic somewhat.

Note that dataframe shift with axis=1 still doesn't work with multiple
categorical columns, since they are each a different block.
