exileCard :: CardID -> StateT GameState IO ()
exileCard cID = do
  state <- get
  players.traversed.field %= delete cID
  unless (state^.card cID.token) $
    exile <>= [cID]
exileCard :: CardID -> StateT GameState IO ()
exileCard cID = do
  state <- get
  players.traversed.field %= delete cID
  unless (state^.card cID.token) $
    exile <>= [cID]
exileCard cID = do
  state <- get
  players.traversed.field %= delete cID
  unless (state^.card cID.token) $
    exile <>= [cID]