The Topology of Algebraic Varieties