Adds can_jump? method to Piece.

This method returns true if the piece has a jumping move available. This is
needed to implement the much-debated rule that players are obligated to jump
whenever a jump is available.
Adds a get_pieces_by_player function.

This will facilitate iterating through all of a player's pieces. Useful for
checking if a player has any jumping moves available.
Refactors game_over? to use get_pieces_by_player
Finishes has_jump_move?(player)

This function identifies whether or not any of a player's pieces can make
a jump move this turn.
Fixes print statements for InvalidMoveErrors.