Migrated from ETCopier to COCopier (needs more work)
Made all tests pass (few copy related tests remain broken).

Factored +sharedInstanceForObjectGraphContext: in ETUIObject.

Fixed shared instance management, to ensure these instances are correctly recreated if -[COObjectGraphContext discardAllChanges] is called.

Changed test suite to call -discardAllChanges on every test object initialization, and avoid accumulating garbage in the transient object graph context.

Fixed over-release issues in -copyToObjectGraphContext:.

Improved model descriptions for ETLayout and some subclasses.
Switched to the relationship cache for ETLayout.layoutContext.

Still needs some serious polishing.

Note: Added ETLayout.contextItem and ETPositionalLayout.contextLayout properties in the process, since the metamodel doesn't support to create entities for protocols such as ETLayoutingContext.
Switched to the relationship cache for ETLayoutItem.parentItem
Introduced ETLayoutItem.hostItem property to eliminate -setParentItem:.
Made all tests except one pass in -testMasterDetailPaneLayoutCopy

Wrote model descriptions for ETCompositeLayout and ETPaneLayout.
Removed -defaultIdentifier
Fixed some warnings
Fixed some more warnings
Removed unused code (mostly related to the old copy support)
Fixed +activeTool, +mainTool and -[ETLayoutItemFactory windowGroup] to avoid returning relinquished instances.

Fixed various memory management issues (including some leaks).
Fixed unused values reported by Clang analyzer.
Switched ETController.content to the relationship cache.
Fixed tests in -testRetainCountForItemCreation/Mutation

Reworked -testDeallocatedParentItem, and commented out failing tests until the relationship cache is corrected.

Note: All tests pass.
Replaced serialization accessors by transformers for most ETShape persistent properties
Removed unused ETLayout.delegate
Replaced serialization accessors by transformers for 'filterPredicate' and 'currentObjectType' properties of ETController.

Added ETPredicateToString value transformer.
Replaced serialization accessors by a transformer for ETItemTemplate.objectClass
Replaced serialization accessors by transformers for 'sortDescriptors' and 'allowedPickTypes' of ETController.

Added TestControllerPersistency.

Added a new API to check all copy/commit cases in a single pass in TestCommon subclasses.
Made ETController.allowedDrop/PickTypes persistent properties

Added ETUTITuple to model a UTI collection as an entry in -allowedDropTypes.

Changed ETController to call the proper collection change notification methods.