added support for gradient function to all algorithms + special fix for sep-CMA-ES with gradient