added type requirement for autodiff

produces a more graceful error when forwarddiff_derivative is called on
something other than a Float64