Elementary Number Theory, Group Theory and Ramanujan Graphs by