Implement a Snapshot Set Iterator | Microsoft Interview Question