This will provide a slightly less generic implementation of the 1p basis, but in return we will significantly reduce the amount of pointless wrapper code which should make ACE.jl more maintainable. In addition we will gain flexibility in other ways since this will be a step towards a "more differentiable" ACE.jl that will allow us to differentiate w.r.t. any parameter anywhere in the model.
This will provide a slightly less generic implementation of the 1p basis, but in return we will significantly reduce the amount of pointless wrapper code which should make ACE.jl more maintainable. In addition we will gain flexibility in other ways since this will be a step towards a "more differentiable" ACE.jl that will allow us to differentiate w.r.t. any parameter anywhere in the model.