Cleaning, comments, and endgame

Added methods to determine when the game ends, cleaned up some code,
and added some comments
Deck empty check

Added a method to check if the deck is empty
Hand size method

Added a method to get the size of the hand, both for checking if it is
empty and updating the player on how many cards the opponent has