First Course in Abstract Algebra