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
Improved extruded polygon performance and slightly improve combining geometries. Also reduce memory allocations.
More extruded polygon optimizations.
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.
Revert GeometryPipeline changes and slightly reduce memory allocations.
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 branch 'master' into geometry-perf
Merge pull request #2328 from AnalyticalGraphicsInc/polyline-duplicates

Polyline duplicates
Reduce garbage collection in WallGeometryLibrary.
Minor performance improvement by removing inverse trig calls in a loop and remove more temporary object creation.
Remove missing cartesian allocation that could be a scratch.
Add Entity support for box geometry

Still needs cleanup and tests.