Refactor the codes:
1. Move the game playing logic into GameSession::start()
2. Change GameSession::play() function to accept Player as parameter ie. GameSession::play(Player& p)