[x] State restructuring: try to take as many quantities outside the state object as possible. We only want to maintain invariants that are needed for passing the state again.
[x] state.reset(*, **kwargs) and allow user to modify any subset of the "modifiable" things. Return a new object with those changes. This is a change to state.update_lmda_path.
[x] objective should really just be naive version and add a glm object to make it general.
Refactor:
state.reset(*, **kwargs)
and allow user to modify any subset of the "modifiable" things. Return a new object with those changes. This is a change tostate.update_lmda_path
.objective
should really just be naive version and add aglm
object to make it general.Tests: