Use performance.now to limit load queue processing time.

Previously we were using Date.now, but its resolution is terrible, at
least on Windows.  Cesium is only supposed to spend up to 5ms per frame
processing the tile load queue, but WTF reported it frequently taking over
10ms.  After this change, processing time is actually limited to ~5 ms,
which reduces frame rate drops while loading tiles.
Show view-specific Bing attribution.
Better mechanism for obtaining credits.
Handle the possibility that no attribution is provided.
Add getTileCredits to all imagery providers.
Update tests with updated URL.
Remove useless comment.
Move terrain/imagery credit update to surface.
Revert changes to viewExtent. Move check for zero vector sooner and adjust if needed.
Update CHANGES.md.
Fix onDataSourceRemoved, and move onDataSourceChanged.
Viewer can now track which data source has the active clock.
Fix developer error when zooming creates an invalid frustum. Also fix crash when attempting to normalize the zero vector during translation in 2D.
Merge branch 'master' into cameraZoom2D

Conflicts:
	CHANGES.md
Merge branch 'master' into viewExtent

Conflicts:
	CHANGES.md
Merge remote-tracking branch 'origin/master' into performanceNow
Update CHANGES.md.
Add more detail to CHANGES.md.
Use defaultValue.EMPTY_OBJECT instead of allocating.
Merge remote-tracking branch 'origin/master' into bingAttribution

Conflicts:
	CHANGES.md
	Source/Scene/CentralBody.js
	Source/Scene/CentralBodySurface.js