A ruleset should only be created by a Game, and a Ruleset knows its game

This change was prompted by a need for the Ruleset to have access to
the deck. It could have a reference to the deck, but that seems uncouth
to me. Instead, since a ruleset is always a part of a game anyway, it
should track its game and use that to access the deck. This of course
also requires changing the setup for quite a few tests.