Added steepest descent and bfgs