This is a breaking API change, as it replaces the (gross) (baseline,start,end,width) API with just using the line's bounds. This also adds a dedicated value for wavy line thickness, as there isn't a 1:1 function between the two in gecko. Wavy lines are changed to have the same period as gecko uses, which is necessary to make some subtle hacks where gecko aligns and clips multiple lines to make the illusion of a single continuous line. Wavy lines are also changed to not have AA if they are thin (thickness <= 2.0), as this matches the standard gecko style. Future work needs to be done to make dashed and dotted lines also support this continuity illusion (but no API/gecko work should need to be done).