Changed Pinochle Game Implementation

Implemented pinochle game in different way. Rather than using the state
design pattern, I’m planning on using more of an template design
pattern. PinochleGame is going to be an abstract class with implemented
methods and methods left up for class’s inheriting.

The goal is to create 3 (maybe more) versions of Pinochle including
2-hand, 3-hand, and 4-hand games. These games will implement the
abstract pinochle class to provide own implementation. Methods in
abstract class such as counting meld, dealing, etc will be the same for
all games.

Also introduced a PinochleDriver class that will run the events of the
current game.

Future event machine will prompt connected players for input and
monitor disconnects and timeouts. The pinochle driver class lives
inside the event machine.

The Pinochle Driver class will ask for one thing from the Event
machine. (Socket, and Object). Basically the event machine will only
need to request an object from the socket given. This will help
separate out responsibilities.

The PinochleGame will monitor the state of the game and keep track of
everything necessary.

**So far I have implemented the dealing/bidding functions of the game.
This is everything needed for the PreRound. Future work will include
the actual Round of the Pinochle game. Future work will include
2-handed and 3-handed pinochle.