iOS Interview: Delegation Pattern in Swift