Add DeckValidator class for deck validation

Use some classes to make the code more flexible
and maintainable.
[TODO] added note regarding card counts