Categorical fixups

Some fixups for Categoricals.

Fixes: #3678 

* [x] Maybe change Series.cat after the discussion in https://github.com/pydata/pandas/issues/7207 ?
* [ ] remove Series.cat from tab completition if Series is not of dtype category
* [x] fix for the "FIXME" in unittests
* [x] Look at problems in docs (-> hdf support)
* [x] Fixup Comparison thingies...
Note this is the ref in numpy:

```
ndarray.__array__(|dtype) → reference if type unchanged, copy otherwise.

Returns either a new reference to self if dtype is not given or a new array of provided data type if dtype is different from the current dtype of the array.
```