robust covariance, cov_type in fit

integrating robust covariances into the model fit method, see issue #1418 
summary issue for robust covariances is #1158

continuing after PR #1867
now starting with discrete models to build the generic version



two possible problems using a standalone function, e.g.
`get_robustcov_results(res_olsg_._results, cov_type='HC1', use_self=True)`

 - cache already has content that doesn't get overwritten
 - we cannot call the standalone function with the wrapper. We need access and change the underlying Results instance.

`use_self=True` is only intended for use in a results.__init__ when we can make sure we haven't used the cache yet, and internally we only have the results instance and not the wrapper.
`nonrobust` doesn't define `cov_params_default`
move to `get_robustcov_results` or not.
OLS AFAIR the nonrobust case doesn't change the current calls  and code path in OLS, except for adding this information.