Elementary number theory, group theory, and Ramanujan graphs