Data source outline width

The bulk of this change adds geometry outline width support to the `DataSource` layer. This is exposed via a new `outlineWidth` property on `EllipseGraphics`, `EllipsoidGraphics`, `PolygonGraphics`, `RectangleGraphics`, and `WallGraphics`.  For non-time-dynamic data, `StaticOutlineGeometryBatch` now groups geometry by width before splitting them into translucent/opaque groups.  Time-dynamic data regenerates geometry every frame as it was already doing (but now includes outline width).

Also:
* Added `outlineWidth` support to CZML geometry packets.
* Added `stroke-width` support to the GeoJSON simple-style implementation.
* Fixed external Khronos links in documentation.
* Fixes some bad tests for the above graphics classes and also added missing variable declaration from their constructor functions (and of course add tests for the new functionality).
* Also added a private function `Context.putLineWidthInValidRange`, which clamps the value to line widths supported by the underlying WebGL implementation.

Should we add information somewhere regarding browsers only supporting a line width of 1 on Windows?  I'm sure it will continue to be a common question on the mailing list; more so now that we're exposing it at a higher level.
`Context` is private.  We try to avoid using it unless we are in rendering code.  Perhaps make this `Scene.clampLineWidth` even if we don't want to make it public.