Cleanup CompositeDynamicObjectCollection

1. DynamicObject.definitionChanged previously only fired on property assignment; now that it fires whenever a property is changed we could remove a bunch of extra bookeeping code.
2. We no longer a new closed-over function for each event subscription, so I moved the function created by createPropertyChangedCallback onto the prototype.
3. Fix a bad length assignment in removeAllCollections.
4. Compositing should now be faster and take up less memory.
Fix viewer timeline resize

We size the timeline based on the existence of the animation widget and fullscreen button; however we were not handling the fullscreen button case on resize. If you created the Viewer widget vefore it's container was laid out, the timeline layout would use a width of 0 for the fullscreen button and not update correctly once layout occured.
Remove now old comments due to changes in the glTF spec
Merge pull request #1535 from AnalyticalGraphicsInc/compositeDynamicObjectCollection

Cleanup CompositeDynamicObjectCollection
Changes after review

Remove bad copy/paste code.
Merge pull request #1537 from AnalyticalGraphicsInc/viewer-resize

Fix viewer timeline resize
Merge pull request #1538 from AnalyticalGraphicsInc/camera

Remove CameraController
Correct default value in documentation.
Merge branch 'camera-master', remote-tracking branch 'origin' into cameraTransform