fn generalized_trim_back( roads: &mut BTreeMap<OriginalRoad, Road>, i: NodeID, input_road_lines: &[RoadLine], debug: Vec<(String, Polygon)>) -> Result<(Polygon, Vec<(String, Polygon)>)>