Abstract Algebra A Geometric Approach