Route manipulation API with automatic constraint propagation
The goal of this branch is to create a wide API/toolbox to create and update routes for SAEVs and Requests, all while maintaining constraint propagation values for easier feasibility checks when trying to insert or modify a key point in one of our routes