pub type VSegment = Segment<CoordY>;
pub struct VSegment { pub start: CoordY, pub end: CoordY, pub cost: Cost, }
start: CoordY
end: CoordY
cost: Cost