Improve font rendering and outlines

To remove jaggedness of outlines, we now set context.lineJoin to `round`.
After doing this, I realized that lots of letters where still being cut
off on both sides.  It turns out the bounding width of the letter that
we compute is actually wider than the browser computed width.  Using our
own values prevented the cutoff.

I still want to test this more with a variety of fonts and settings to
make sure it's good, any help in that area is appreciated.

I used thie jsFiddle to compare our per-letter rendering to typical "whole"
word rendering in browsers: http://jsfiddle.net/AbdiasSoftware/48m4B/2/
We should match the bad kerning and all.

Fonts also look better at smaller resolutions now, so I removed the label
hack I had in simple.czml.

Fixes #1141
Don't double request font outline width.

This was previously a hack to try and make fonts looks better in Cesium.
Minor cleanup.
Fix failing tests.
Fix font issue uncovered in Firefox

We should take the larger value between width and computedWidth.  As a result, we can now always start drawing at x=0 instead of using an offset.
Merge remote-tracking branch 'origin/master' into font-outlines
Undo uneeded test change.
Disable image smoothing in writeTextToCanvas.
Throw exception if a polyline geometry does not have at least two unique positions.
Fix Custom DataSource example crash by ignoring lines of zero height.
Add debug pragmas for polyline geometry exception.
Merge pull request #2328 from AnalyticalGraphicsInc/polyline-duplicates

Polyline duplicates
Merge pull request #2322 from AnalyticalGraphicsInc/font-outlines

Improve font rendering and outlines