Fix RFE n_features minimum value #3812

In RFE class the step value was just rounded down. 

```
step = int(self.step * n_features)
```

This was a problem when the number of features was small because step was 0 and it was raising an exception.

```
ValueError: Step must be >0
```

With the following fix we still keep the rounding down (so as not to change behavior too much) but do a minimum with 1. **step = [1, n_features-1]**

Fixed issue https://github.com/scikit-learn/scikit-learn/issues/3812
why not just do 

step = max(1, int(self.step * n_features))

?