Topology of Algebraic Varieties