Fix initialization of self.best_cost
Add documentation and remove extra __init__ methods from KFold variants