Add new horizon culling point computation.

This one is courtesy of Frank Stoner.  It is faster and can be used with
an ellipsoid, not just a sphere.
EllipsoidalOccluder improvements.
Use new horizon occlusion point computation.
Fix horizon occlusion point problems.
Remove unused Occluder from CentralBodySurface.
Fix problems with small central bodies.
Use heights when computing occlusion point.

Also tests and minor algorithm improvements.
Update CHANGES.md.
Fix warning.
Remove unused require.
Merge remote-tracking branch 'origin/master' into horizonCullingPoint

Conflicts:
	CHANGES.md
Fix minification.

The uptodate check was skipping the combine step for the minified version because the unminified combine step also put a file there.
Merge pull request #752 from AnalyticalGraphicsInc/fixMinify

Fix minification.
Merge pull request #749 from AnalyticalGraphicsInc/horizonCullingPoint

Improve horizon occlusion point computation
Rename FullscreenWidget to FullscreenButton and associated files

Also add specs for the widget, which cover as much as we can since we can't actually use Fullscreen mode in tests.
Fire cut at HomeButton widget

Also clean up some other widget code and remove unecessary public properties.
HomeButton and createCommand specs.
Update CHANGES.
Merge branch 'homeButton' into viewer

Conflicts:
	Source/Widgets/BaseLayerPicker/BaseLayerPicker.js
	Source/Widgets/FullscreenButton/FullscreenButton.js
	Source/Widgets/lighter.css
	Source/Widgets/widgets.css