Use `id` property for consistent picking.

This is a breaking change which removes the practice of monkey patching primitives with a `dynamicObject` property.
Ongoing DynamicScene geometry work

1. Add some basic specs for GeometryVisualizer.
2. Fix a bug in ColorMaterialProperty
3. Have GeometryVisualizer subscribe to an object and receive notification when it's geometry changes.
4. Misc cleanup.