- Rename CelestialBody/Spacecraft position/velocity to global_*
- Add OrbitalElements struct to both bodies and spacecraft
- Rename old OrbitalElements to OrbitalMetrics (for output/analysis)
- Update all references throughout codebase
- Preserve parent_index in outer structs (not in OrbitalElements)
- Build succeeds with only unused variable warning
Merge spacecraft management into simulation module:
- Move Spacecraft struct from maneuver.h to spacecraft.h
- Add spacecraft array to SimulationState (spacecraft, craft_count, max_craft)
- Remove separate SpacecraftState struct and related functions
- Update create_simulation() to require max_craft parameter
- Move spacecraft update logic into update_simulation()
- Make load_spacecraft_config() internal helper, called by load_system_config()
- Update all test files to use new API with 3-parameter create_simulation()
- Handle max_craft=0 case gracefully (no spacecraft allocation)
Test results: 26/27 passing (1 pre-existing SOI test unrelated to changes)
Add basic maneuvering API for spacecraft with impulsive delta-v burns in local frame:
- Add vec3_dot() function to physics module
- Create Spacecraft struct and SpacecraftState for separate spacecraft management
- Implement 6 burn directions: prograde, retrograde, normal, anti-normal, radial in/out
- Add RK4 propagation for spacecraft with update_spacecraft()
- Extend config loader to parse [[spacecraft]] TOML sections
- Add 6 test cases verifying burn physics and propagation stability
- Rename old mission_planning module to _old for future reference
Test results: 26/27 passing (1 pre-existing SOI test unrelated to changes)