SetGame Card game Set from Stanford CS193p 2020 assignment III Project created completely from scratch. MVVM SwiftUI Protocol Generics Timer @ObservedObject @State closures enum