Start refactoring Datasource interface

Manually extract all non-dataSourceBrowser specific changes out of the `dataSourceBrowser` branch.
Turn DataSource get methods into ES5 properties.
Merge branch 'master' into dataSource-refactor
getIntervals should be intervals.
Fix path visualization when using composite properties.
Start of path subsampling specs.
DynamicPathVisualizer specs and fixes

Unit test a bunch of untested code and fix issues discovered.  There are still issues that need to be addressed.
More specs and fixes for path visualization.
Handle path resolution of 0 (and invalid negative values).
Merge remote-tracking branch 'origin/master' into dataSource-refactor
Merge branch 'dynamicScene-rectangle' into dataSource-refactor
Update CHANGES
Merge remote-tracking branch 'origin/master' into dataSource-refactor
Make DataSource.update optional.
Changes after review.
Clean up whitespace.
Clean up whitespace.
Merge remote-tracking branch 'origin/master' into dataSource-refactor
Update CHANGES
Merge pull request #1641 from AnalyticalGraphicsInc/dataSource-refactor

Data source refactor