Add `DataSource.getName` function.

1. Data sources now have a `getName` function so that they can be titled for the user.
2. Added utility `getFilenameFromUri` function which takes a url and returns the last segment; which is then used to determine a defualt name if none is provided to the data source.
3. Hooked up CzmlDataSource and GeoJsonDataSource to use new functionality.
Add specs for `getFilenameFromUri`.
Update changes.

Also fix DynamicObject.id documentation, it has always been required to be a string.
Merge branch 'dynamicObject-name' into dataSourceBrowser

Conflicts:
	Source/DynamicScene/CzmlDataSource.js
	Source/DynamicScene/GeoJsonDataSource.js
Merge branch 'dataSourceBrowser' into uberbranch
Make KML documents figure out their name.