API: Change reorder_levels and drop_unused_levels to inplace=False

As per the discussion in #8074, change the default of both methods
to return a copy and only do the change inplace if told otherwise.

Discusion in
https://github.com/pydata/pandas/issues/8074#issuecomment-54093664
API: Make str(cat) more array like

As Categorical is more like np.ndarray and less similar to pd.Series,
change the string representation of Categorical to be more like
np.ndarray.
Rename CategoricalProperties CategoricalAccessor