Split Player enum into its own file

Also, add a couple of convenience methods
game: simplify implementation of n_tiles
game: inherit from gobject

In theory, this is required to possess signals.  (Clearly this is not
actually the case.)
computer-player: inherit from gobject
ComputerPlayer: own Strategy and PossibleMove

These enums are never needed or used outside ComputerPlayer

Also, give PossibleMove a constructor, for convenience
game: add to_string and from_string
Game: code cleanups and general improvements
Add a couple simple tests
ComputerPlayer: make several methods static
ComputerPlayer: game over should be max alpha/beta
ComputerPlayer: fix selection of some invalid moves
ComputerPlayer: strengthen assertions
Game: remove useless Start method
Trivial style changes
Workaround signal misfires

https://bugzilla.gnome.org/show_bug.cgi?id=708130
Remove unneeded was_pass variable