Algorithmic Game Theory: Network Formation Games and the Potential Function Method