set relationships between items

also use __weak to allow items to be GC'd