ENH: make sure return dtypes for nan funcs are consistent
this is a follow-up to https://github.com/pydata/pandas/pull/10172

In addition to `mean()`, this PR also makes sure the returned dtype is consistent for `std()`, `var()`, `skew()`, and `kurt()`
