lookupCardPair :: (Monad m) => (CardID,CardID) -> StateT GameState m (Card,Card)
lookupCardPair pair = do let (b,a) = pair
                         attacker <- use (card a)
                         blocker <- use (card b)
                         return (blocker,attacker)
lookupCardPair :: (Monad m) => (CardID,CardID) -> StateT GameState m (Card,Card)
lookupCardPair pair = do let (b,a) = pair
                         attacker <- use (card a)
                         blocker <- use (card b)
                         return (blocker,attacker)
lookupCardPair pair = do let (b,a) = pair
                         attacker <- use (card a)
                         blocker <- use (card b)
                         return (blocker,attacker)