Game Theory Meets Theoretical Computer Science