Merge with upstream master.
Basic support for spreading label along the line.