Can the API for adding an adjoint rule allow for explicitly specifying the rule for a higher order adjoint? e.g. `D(sin,x) = v -> v * cos(x)` but I also know that `D(sin,x; n=2) = (v1,v2) -> v2*v1*(- sin(x))`