Consolidate common DeveloperError usage.

We had tons of string literals throughout Cesium with the text `This type should not be instantiated directly.`.  We also had helper functions set up in multiple files doing similar things.  This consolidates usages of this error message into a single static `DeveloperError.throwInstantionError` function.

Assuming our minimizer doesn't do fancy string literal extraction, this should also string the minimized file every so slightly as well.
Add changed event for TimeIntervalCollection.

This even is raised whenever the collection of intervals is changed.  This does not attempt to inform the user as to the detials of the changes, just that it happened.  This is from the `dynamicScene-refactor` branch and was extracted out to simplify that PR.

I took the minimal approach here because I didn't want to get wrapped up in the larger TimeInterval, and TimeIntervalCollection refactor that still needs to occur in the future.
Merge branch 'master' into timeIntervalCollection-events
Changes after review

Remove wrapper functions and assign `DeveloperError.throwInstantiationError;` directly to the prototype.
Merge remote-tracking branch 'origin/master' into developerError-cleanup
Prefer jasmine.createSpy to spyOn.
fix whitespace
Merge pull request #1475 from AnalyticalGraphicsInc/developerError-cleanup

Consolidate common DeveloperError usage.
Merge pull request #1476 from AnalyticalGraphicsInc/timeIntervalCollection-events

Add changed event for TimeIntervalCollection.
Merge remote-tracking branch 'origin/master' into dynamicScene-refactor

Conflicts:
	Source/DynamicScene/MaterialProperty.js
	Source/DynamicScene/PositionProperty.js
	Source/DynamicScene/Property.js
	Specs/Core/TimeIntervalCollectionSpec.js