refactor nextTurn using listeners on model attrs