When the desired widths (offsets) of beveled edges cannot be satisfied, often because we want them to meet on an intermediate non-beveled edge, we need to compromise on the widths somehow. This code changes the compromise to minimize the sum of squares of errors in the offsets. It also adds a global width consistency pass: starting from a vertex that needed width adjustment, it uses a breadth-first search to try to propagate the adjustments and keep the bevel widths from having to taper along the edges. Also fixed a case where a reflex angle would cause bad results. Also fixed the way the 'percentage' width method was calculated.