Fix CesiumInspecter and related specs

There were non-overlapping changes in #1464 that broke #1332.  Since they went into master about the same time, each branch worked fine until they were both merged together. Github didn't notice because they were non-overlapping changes.
Add AssociativeArray and specs.

This is a new Core class created as part of the `dynamicScene-refactor` branch that I'm bringing in ahead of time to make the pull request simpler.
Merge pull request #1473 from AnalyticalGraphicsInc/fix-cesium-inspector

Fix CesiumInspecter and related specs
Changes based on review.
Move changes after review

Also refactor `DynamicObjectCollection` to use AssociativeArray, which simplifies the code some.
Merge branch 'master' into associativeArray
Fix typos.
Merge pull request #1474 from AnalyticalGraphicsInc/associativeArray

Add AssociativeArray and specs.
Changes after review

Remove wrapper functions and assign `DeveloperError.throwInstantiationError;` directly to the prototype.
Merge remote-tracking branch 'origin/master' into developerError-cleanup