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.
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.
Merge branch 'master' into timeIntervalCollection-events