[stats] Allow for keyword arguments in distributions.

Generates the correct signatures for args, loc, scale
dynamically for each distribution. Thus sidesteps the
using _fix_loc_scale_kwarg3 at each call.
Generates signatures for stats and moments as well,
allowing `size` and `moments` as keywords or
positional arguments.
TST: Change the test allowing propagation of nans with
incorrect number of parameters. The changed behavior matches
that of R.
TST: test all distributions
TST: refactor tests, remove unreacheable code