Topological string theory and enumerative geometry