I have used the iterator pattern in most of the instances where I am to change something with map. It just works better. I should have perhaps used command pattern and probably the strategy pattern when creating the cards. It would have made alot of the functonality much better. I can also see how people could use a decorator pattern for cards decorations for favourite cards, might be a good idea too!