Implement DeckStrategy and refactor accordingly.