Game engine parser 2

Idea for future: Is `Array` sufficiently smart to do operations that should be on a player's hand.  I foresee a model called `GameEngine::Hand` which stores the `GameEngine::Card`s in an array, _but_ which has a lot of smarts (`has_defence_card?` or `empty?`) as being potentially handy.  Just a thing to keep an eye out for.