Fix a bug in Hanabi::Server.

The server forgot to clear the discard pile (a vector of Cards)
before each game, which meant that calling server.discards() in
any game after the first would return a vector containing too
many cards. None of my bots relied on this behavior, so I didn't
catch it until now.
CheatBot now knows not to temporize when there are no "safe" discards visible.

Before this change, if CheatBot had nothing to play, it would try to discard
some "safe" card, such as a worthless card or a duplicate. If it didn't even
have a "safe" discard, it would temporize (by giving a hint). However, this
tactic backfires if *nobody* has a safe discard! In that case, everybody would
temporize until finally someone was forced to play probabilities.

The right tactic is to notice when we're in this bad situation (where nobody
has a safe discard, nor anything to play), and in that case prefer to "play
probabilities" rather than "temporize".

Before this change, CheatBot got 95.6% perfect games; after, it gets 96.8%
perfect games. This boosts its average score by about 0.02 ppg.

I also simplified the discards-tracking logic, now that Server::discards()
works properly. The vector copy probably slows down CheatBot a little bit,
but it's no big deal.