PlanDuration parsing now returns an iterator to the last maneuver with a valid duration.
Plans with infinite maneuvers will have a duration until the infinite maneuver comes up.
This means that a plan's duration will represent the minimum estimated duration.
Action Scheduling no longer depends on valid plan durations.
Progress reported after an infinite maneuver is reached should be near or equal to 100%.
If progress used to be valid then use previous value.
Merge branch 'issue/task-2166'

This commit fixes #2166