A History of Abstract Algebra