allow floating-point values for stroke width

oCanvas currently rounds stroke width to integer; in raw canvas, stroke width can be floating point, and even < 1.0. This is especially useful when there is a global scale/transform on the canvas ..