Does it still work without overriding the callback? or is this necessary because our callback uses a different number of arguments?

If the current callback doesn't work, then we won't have the Perfect Separation check for Logit and Probit. 

scipy documentation says 3 arguments for callback, we only use x which is params.
Robert, can you try adding `*args` to

`    def _check_perfect_pred(self, params)`
so it is
`    def _check_perfect_pred(self, params, *args)`

on line 141 in `discrete/discrete_model.py`

Then overriding the callback here will not be necessary anymore, I think.