Get rid of useless BaseRecurrent

It's actually apply method that can be recurrent, not a brick
PEP8
Pass *args, **kwargs to the signature func
Nicer set of classes