Breaks out an Edge class. The beginnings of a more solid theory of return values