Foundations of game theory