DOC: cookbook.rst update
BUG: fix transform with integers
Merge pull request #7973 from cpcloud/transform-oddity-7972

BUG: fix transform with integers
PERF: perf improvements for Series.transform (revised) (GH6496)
Merge pull request #7975 from jreback/transform_perf

PERF: perf improvements for Series.transform (revised) (GH6496)
BUG: Allow __name__less callables as groupby hows (GH7929)
Merge pull request #7974 from dsm054/allow_nameless_callables

BUG: Allow __name__less callables as groupby hows (GH7929)
INT: use platform_int for np.repeat related (GH7975)
API: add Series.dt delegator for datetimelike methods (GH7207)

CLN: make _add_delegate_accessors generic
Categorical: preserve ints when NaN are present

`Categorical([1, np.nan])` would end up with a single `1.` float level.
This commit ensures that if `values` is a list of ints and contains np.nan,
the float conversation does not take place.
Categorical: fix describe with np.nan
Categorical: ensure that one can assign np.nan
Categorical: fix assigning NaN if NaN in levels
API: change default Categorical.from_codes() to ordered=False

In the normal constructor `ordered=True` is only assumed if the levels
are given or the values are sortable (which is most of the cases), but
in `from_codes(...)` we can't asssume this so the default should be
`False`.
Categorical: add some links to Categorical in the other docs
Categorical: use s.values when calling private methods

s.values is the underlying Categorical object, s.cat will be changed
to only expose the API methods/properties.
Categorical: Change series.cat to only expose the API
Categorical: Fix order and na_position
Categorical: Fix comparision of two Categoricals and Series and Categorical

Categorical can only be comapred to another Categorical with the same levels
and the same ordering and to a scalar value.

If the Categorical has no order defined (cat.ordered == False), only equal
(and not equal) are defined.