[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
MAINT: some minor edits to PR-2588, style and update gh-issue number.
MAINT: collected the inspect calls together
MAINT: bypass inspect in stats.distributions by using explicit shapes
DOC: removed inconsistencies between shape parameters in docstrings.
MAINT: small refactoring. pep8 compliance, more robust tests
DOC: document the changes to the shapes parameter.
TST: add tests for subclassing stats.rv_continuous.
TST: tests for check for *args & **kwds w/inspected shapes
MAINT: attach _parse_args to the instance, not class.

Fixes the test failure in statsmodels induced by this PR/2588.
Attaching to the instance a kind of makes sense since
shapes/numargs are only created in __init__ anyway.
TST: rework tests for explicit shapes
Merge branch 'pr/2588' into master.

Conflicts:
	doc/release/0.13.0-notes.rst