Game logic divided into separate classes.