added defaults; removed second_derivative/hessian without giving first derivative; updated tests