Moved some Id functionality to the Identifer trait.
Added ShareId struct.
Added WeakId.
Added Owned and Shared array traits.
Split out an object_impl macro.
Added an Identifier type param to NSArray.
Added NSMutableArray trait.

Can't test it yet because I can't implement DerefMut for Id without
breaking everything...