Modern Algebra: An Introduction