Start refactoring TimeInterval
Ongoing TimeInterval refactoring.

This change mostly modifies the contructor functions to take an `options` object.
Ongoing TimeInterval refactoring

Clean up doc and use scratch variables in a few places.
Merge remote-tracking branch 'origin/master' into timeInterval-refactor

Conflicts:
	Specs/DynamicScene/DynamicPathVisualizerSpec.js
Merge branch 'julianDate-require-result' into timeInterval-refactor

Conflicts:
	Specs/DynamicScene/DynamicPathVisualizerSpec.js
TimeInterval doc cleanup.
Ongoign TimeInterval refactoring

Finish up documentation and bring test coverage up to 100%.
Clean up and refactoring of TimeIntervalCollection
Add specs for new TimeIntervalCollection properties.
Merge remote-tracking branch 'origin/master' into timeInterval-refactor
Update CHANGES
Update some tests
Update CHANGES.md
Update CHANGES.md

fix typo
Merge remote-tracking branch 'origin/master' into timeInterval-refactor

Conflicts:
	CHANGES.md
Changes after review.
Merge remote-tracking branch 'origin/master' into timeInterval-refactor

Conflicts:
	CHANGES.md
	Source/Core/TimeInterval.js
Fix typos.
Fix documentation.
whitespace