Retain Cycle, Automatic Reference Counting, Memory Leak - Swift iOS Developer Interview Question