This would be a number of steps from any state on that route. We'd have to:
- Store this number in the statedb.
- Update states seen as they come in.
- Create a new ScoreMetric.
- Update recreated states as part of recording a solution.
It may be infeasible to exclude states from dropped solutions.
Also, this might update states a lot faster than we've previously done, so it may be wise to add more columns instead of shoving the entire StateData type into a single column.