Add a usage message
Add cases for all commands
A template for addReservation
Perform route lookup for addReservation
Place an actual reservation

This is still preliminary code and missing some checks and details.
Determine the new reservation id
Simplify sum calculation
Simplify lookups and checks

Perform all on the top level in a single function.
Export selectively in Reservation
Extract appendReservation function
Hide reservationsForTrain
Add reservationsForTrainAndSegment
Ensure maximum can handle empty lists
TODO note
Rough structure of final seat reservation component
Determine available seats per wagon
Catch argument errors in reserve command
Finish seat reservation
Implement reservation display
Implement reservation deletion