Start refactoring JulianDate

Turn all prototype functions (except for clone/equals/eqaulsEpsilon/compareTo) into static functions.
Merge remote-tracking branch 'origin/master' into refactor-julianDate
Ongoing JulianDate refactoring

Default constructing a JulianDate no longer creates an instance set to the current time; I added JulianDate.now() for this purpose.
Ongoing JulianDate refactoring.

1. Clean up documentation.
2. Make all relevant function take result parameters.
Merge remote-tracking branch 'origin/master' into refactor-julianDate

Conflicts:
	Source/DynamicScene/SampledProperty.js
Refactor LeapSecond to be a simply data object.

1. Removes the need for circular referneces between `LeapSecond` and `JulianDate`.
2. Moves array of leap seconds from `LeapSecond.leapSeconds` to `JulianDate.leapSeconds`
JulianDate doc cleanup.
Swap order of parameters in JulianDate.getSecondsDifference and JulianDate.getDaysDifference
Update changes
Fix typos
Changes after review.

Actually take a result parameter in function that claim to.
Fix copy/paste error.
Merge remote-tracking branch 'origin/master' into refactor-julianDate

Conflicts:
	CHANGES.md
Whitespace
Merge pull request #1821 from AnalyticalGraphicsInc/refactor-julianDate

Refactor julian date