Major overhaul of the internal architecture of WEI, taking better advantage of our Pydantic Dataclasses and removing a fair bit of legacy code.
Other improvements and changes include:
- Codified `StepResponse` and `StepFileResponse` models, which are now a standardized response from modules
- Switch to WEI Engine
- Moved `exp_app.Experiment` -> `experiment_client.ExperimentClient` (wei.Experiment is still aliased, in addition to wei.ExperimentClient)
- Standardized around "Workflow Runs" nomenclature, removing references to "jobs"