Updated middle-layer propose JSON to match frontend DTO's
Specifically:
- Added ObservationSpecification list to AllocationRequest entity and ObsSpec IDs to AR JSON
- Added sources, hardwareConfigs, and scanIntents to ObsSpec JSON
- Renamed ObsSpec.bands -> ObsSpec.hardwareConfigs in frontend
- Changed misc. full objects to IDs (just in JSON)
Also:
- Refactored Proposal-state-change service for clarity (to get tests to pass)
Edited by Sam Kagan