I collect lesser bananas...

I collect lesser bananas... (Initial detection of changes in collections and related fixup of FKs)

Specifically:
- Update Sidecars to allow taking snapshots of collections
- DetectChanges for comparing old and current collections
- Fixup of FK using detected information
- Also, fixup of FK on principal side of 1:1 relationship
So that the same code can be used regardless of which implementation of IEntityType is being used.