Merge pull request #2724 from EvgeniBurovski/stats_refactor

refactor stats/distributions.py
BUG: fix moments of dweibull distribution
ENH: reenable the explicit ppf for dweibull distribution
ENH: add _stats method to dweibull distribution.

Since dweibull pdf is symmetric around origin, all odd moments
(non-central ones) are identically zero. Use this fact and
return zeros for mean and skew from _stats. For variance and kurtosis,
return Nones (and then public stats will call _munp, which
properly implemented).

Incidentally, this smokes out an assumption made by stats(): it
assumes that _stats always returns a sensible value for variance.
Fix this as well.
BUG: make generic stats filter out illegal shape parameters

This is only a partial fix:
1) not all distributions have properly vectorized _stats.
2) distributions with two or more shape parameters still fail.
TST: [stats] clean up tests a bit.