A Mathematical Tapestry by Peter Hilton & Jean Pedersen