Faits : A. Le 12 octobre 2005, le Conseil d'Etat genevois a constaté l'aboutissement de l'initiative populaire intitulée "Fumée passive et santé" (IN 129). L'initiative porte sur l'introduction, dans la Constitution genevoise, d'un nouvel art. 178B libellé de la façon suivante: Titre XIV Dispositions diverses Art. 178B Protection de l'hygiène publique et de la santé Fumée passive 1 Vu l'intérêt public que constitue le respect de l'hygiène publique et la protection de la santé, le Conseil d'Etat est chargé de prendre des mesures contre les atteintes à l'hygiène et à la santé de la population résultant de l'exposition à la fumée du tabac, dont il est démontré scientifiquement qu'elle entraîne la maladie, l'invalidité et la mort. 2 Afin de protéger l'ensemble de la population, il est interdit de fumer dans les lieux publics intérieurs ou fermés, tout particulièrement dans ceux qui sont soumis à une autorisation d'exploitation. 3 Par lieux publics dont les locaux intérieurs ou fermés sont concernés, il faut entendre: a) tous les bâtiments ou locaux publics dépendant de l'Etat et des communes ainsi que toutes autres institutions de caractère public; b) tous les bâtiments ou locaux ouverts au public, notamment ceux affectés à des activités médicales, hospitalières, para-hospitalières, culturelles, récréatives, sportives ainsi qu'à des activités de formation, de loisirs, de rencontres, d'exposition; c) tous les établissements publics au sens de la législation sur la restauration, le débit de boissons et l'hébergement; d) les transports publics et les autres transports professionnels de personnes; e) les autres lieux ouverts au public tels que définis par la loi. L'exposé à l'appui de cette initiative rappelle les risques liés à la fumée passive et la nécessité de protéger le personnel et les personnes qui fréquentent les établissements publics. Estimant que les mesures de ventilation sont inefficaces, les initiants relèvent que plusieurs pays (Italie, Irlande, Malte, Norvège, Suède) ont pris des mesures identiques. B. Le Conseil d'Etat a déposé son rapport sur l'initiative le 11 janvier 2006. S'agissant de la conformité de l'initiative au droit fédéral, il a considéré que la Confédération n'avait pas encore fait usage des compétences découlant de l'art. 118 al. 2 let. b Cst. (mesures de lutte contre les maladies très répandues et particulièrement dangereuses), de sorte que les cantons demeuraient compétents dans le domaine de la protection de la santé. La LTr (art. 6) et l'OLT 3 (art. 19) ne réglementaient pas exhaustivement la protection des travailleurs, et l'initiative allait dans le sens de la législation fédérale. L'initiative pouvait être interprétée comme ne s'appliquant qu'aux bâtiments publics relevant de la compétence cantonale (à l'exclusion notamment des gares CFF et des bâtiments militaires et de la protection civile). S'agissant des droits fondamentaux, le Conseil d'Etat estimait que même si la liberté personnelle n'était pas touchée par l'interdiction de fumer, hormis dans les cas de détention, la question de la proportionnalité se posait en rapport notamment avec le droit au respect de la vie privée et la liberté économique. L'initiative était propre à atteindre les buts de sécurité, de respect d'autrui et de santé publique recherchés, et les autres mesures envisageables (horaires, espaces fumeurs, ventilation) ne paraissaient pas aussi efficaces. Un problème de proportionnalité se posait car l'initiative visait une interdiction absolue: aucune exception n'était prévue en faveur des personnes hospitalisées, à mobilité réduite ou en fin de vie, des détenus, des personnes travaillant seules et des établissements consacrés à la vente de tabac. Une interprétation conforme était certes envisageable, dans la perspective de la législation d'application. Le Conseil d'Etat estimait toutefois qu'il y avait lieu de proposer un contre-projet direct permettant de circonscrire plus précisément, par un nouvel alinéa 3 ou dans la loi d'application, la portée de l'interdiction de fumer. La Commission législative du Grand Conseil a déposé son rapport le 6 juin 2006. Elle avait en mains un avis de droit du Professeur Andreas Auer, concluant à l'invalidité totale de l'initiative essentiellement en raison de son caractère disproportionné, ainsi qu'un avis contraire produit par les initiants. Elle avait alors chargé le Professeur Vincent Martenet d'un avis neutre. Ce dernier considérait que l'interdiction de fumer pouvait être disproportionnée lorsqu'elle visait les lieux de séjour à caractère privatif très marqué, soit les cellules de détention, les chambres d'hôpitaux psychiatriques, les chambres des lieux de soins et de séjour dépendant de l'Etat, ainsi que les chambres d'hôtels. Cette inconstitutionnalité pouvait être levée en modifiant la formule de l'art. 178B al. 3, en remplaçant la phrase introductive par l'expression "Sont concernés:", ce qui permettait de respecter la volonté des initiants tout en préservant la plus grande partie du texte de l'initiative. La majorité de la commission a suivi cet avis: elle a considéré que l'initiative respectait l'unité du genre, de la forme et de la matière, et qu'elle était exécutable. Toutefois, elle ne respectait pas le droit supérieur. La suppression de l'al. 3 a été refusée, et "l'invalidation partielle" de cette disposition a été décidée dans le sens préconisé par le Professeur Martenet. C. Le 22 juin 2006, le Grand Conseil genevois a suivi la proposition de la Commission législative et déclaré partiellement valide l'IN 129. Il a amendé la première phrase de l'art. 178B al. 3 Cst./GE en la remplaçant par l'expression "Sont concernés:". D. Par acte du 29 août 2006, deux citoyens et députés genevois, Ivan Slatkine et Pascal Pétroz, ont saisi le Tribunal fédéral d'un recours de droit public pour violation du droit de vote des citoyens (art. 85 let. a OJ). Ils demandent au Tribunal fédéral d'annuler la décision du Grand Conseil et de déclarer invalide l'initiative IN 129. Ils reprochent en substance au Grand Conseil d'avoir d'une part modifié le texte de l'initiative dans un sens ne correspondant pas à la volonté des initiants et, d'autre part, adopté un texte qui violerait le droit supérieur (soit le droit fédéral relatif à la protection des travailleurs et la liberté personnelle) et qui manquerait de clarté. Le Grand Conseil conclut au rejet du recours en relevant notamment la nécessité de concrétiser l'initiative dans une loi d'exécution. Au terme d'un second échange d'écritures, les parties ont maintenu leurs conclusions.