Sachverhalt:
A. Am 22. Juli 2005 wurde X._ festgenommen, nachdem Y._ ihn beschuldigt hatte, sie am 17. Juli vergewaltigt zu haben. Am folgenden Tag wurde Y._ mittels Videobefragung einvernommen. Im Anschluss daran wurde X._ zum Vergewaltigungsvorwurf befragt und freigelassen.
B. Vom 26. August bis 6. September 2005 war X._ in Untersuchungshaft wegen des Verdachts, am 11. März und 14. Juli 2005 an zwei Raubüberfällen gegen Tankstellen teilgenommen zu haben.
C. Am 17. Juni 2007 wurde X._ von der Staatsanwaltschaft zum Vergewaltigungsvorwurf befragt. Er erklärte, er habe mit Y._ einvernehmlichen Geschlechtsverkehr gehabt. Am 16. August 2007 wurde Y._ in Anwesenheit der Verteidigerin des Angeschuldigten von der Staatsanwaltschaft befragt. Am 25. September 2007 wurde X._ nochmals einvernommen.
Am 25. September 2007 erhob die Staatsanwaltschaft Anklage wegen Vergewaltigung sowie wegen Teilnahme an einem Raubüberfall.
D. Am 19. Dezember 2007 wurde der Angeschuldigte wegen Drogenbesitzes verhaftet und am 21. Dezember 2007 aus der Haft entlassen. Am 21. Januar 2008 wurde er in diesem Zusammenhang erneut verhaftet. Mit Verfügung vom 4. Februar 2008 wurde ihm der vorzeitige Strafantritt bewilligt.
Am 14. März 2008 erhob die Staatsanwaltschaft Zusatzanklage betreffend des Vorwurfs der mehrfachen Widerhandlung gegen das Betäubungsmittelgesetz.
E. Am 1. April 2008 fand die Hauptverhandlung statt. Der Präsident der 2. Abteilung des Bezirksgerichts Zürich ordnete Beweisergänzungen an, u.a. die Einvernahme der Geschädigten Y._ als Zeugin. Dieser wurde eine unentgeltliche Rechtsbeiständin bestellt.
F. Am 2. April 2008 ersuchte X._ um Haftentlassung. Diesen Antrag wies der Haftrichter des Bezirksgerichts Zürich mit Verfügung vom 10. April 2008 ab. Der Haftrichter bejahte Kollusionsgefahr aufgrund der vom Bezirksgericht angeordneten erneuten Befragung von Y._.
G. Dagegen hat X._ am 16. April 2008 Beschwerde in Strafsachen ans Bundesgericht erhoben. Er beantragt, die Verfügung des Haftrichters sei aufzuheben und er sei aus der Haft zu entlassen. Eventualiter seien die zuständigen Behörden anzuweisen, angemessene Auflagen resp. Ersatzmassnahmen mit der Haftentlassung zu verbinden. Überdies ersucht der Beschwerdeführer um unentgeltliche Rechtspflege und Verbeiständung.
Die Staatsanwaltschaft hat auf eine Vernehmlassung verzichtet. Auch der Haftrichter hat sich nicht vernehmen lassen.
Erwägungen:
1. Da alle Sachurteilsvoraussetzungen vorliegen, ist auf die Beschwerde in Strafsachen grundsätzlich einzutreten.
Nicht einzutreten ist allerdings auf die Rüge der Verletzung des Beschleunigungsgebots und des Verhältnismässigkeitsprinzips durch drohende übermässige Haftdauer, weil diese Rügen zwar eingangs der Beschwerdeschrift (S. 3) angekündigt, danach aber nicht (genügend) begründet werden (vgl. Art. 106 Abs. 2 i.V.m. Art. 42 Abs. 2 BGG).
2. Der Beschwerdeführer befindet sich im vorzeitigen Strafvollzug. Dieser setzt das Einverständnis der angeschuldigten Person sowie die Erwartung einer unbedingten Freiheitsstrafe oder einer stationären Massnahme voraus und darf den Zweck des Strafverfahrens nicht gefährden (§ 71a StPO/ZH). Für alle strafprozessualen Häftlinge, inklusive Gefangene im vorzeitigen Straf- und Massnahmenvollzug, gilt die Unschuldsvermutung (Art. 32 Abs. 1 BV). Diese können sich auf die einschlägigen Verfahrensgarantien von Art. 31 BV berufen (BGE 133 I 270 E. 2 S. 275 mit Hinweisen) und jederzeit ein Begehren um Entlassung aus dem vorzeitigen Strafvollzug stellen (BGE 117 Ia 72 E. 1d S. 79 f.). Dieses Gesuch darf nur abgewiesen werden, wenn strafprozessuale Haftgründe fortdauern und die Dauer der Haft bzw. des Strafvollzugs nicht in die Nähe der konkret zu erwartenden Strafe gerückt ist (BGE 133 I 270 E. 3.4.2 S. 281 mit Hinweisen; 117 Ia 72 E. 1d S. 80).
Voraussetzung für die Anordnung und Fortdauer von Untersuchungs- bzw. Sicherheitshaft (§ 67 StPO/ZH) ist nach zürcherischem Strafprozessrecht, dass der Angeschuldigte eines Vergehens oder Verbrechens dringend verdächtigt wird und zudem ein besonderer Haftgrund vorliegt, namentlich Kollusions-, Flucht-, oder Wiederholungsgefahr (§ 58 Abs. 1 StPO/ZH). Die Untersuchungs- oder Sicherheitshaft ist durch mildere Massnahmen zu ersetzen, sofern sich der Haftzweck auch auf diese Weise erreichen lässt (§ 58 Abs. 4 i.V.m. § 72 f. StPO/ZH).
Im vorliegenden Fall ist der dringende Tatverdacht unproblematisch; streitig ist jedoch, ob Kollusionsgefahr vorliegt.
3. Kollusion bedeutet insbesondere, dass sich der Angeschuldigte mit Zeugen, Auskunftspersonen, Sachverständigen oder Mitangeschuldigten ins Einvernehmen setzt oder sie zu wahrheitswidrigen Aussagen veranlasst, oder dass er Spuren und Beweismittel beseitigt. Die strafprozessuale Haft wegen Kollusionsgefahr soll verhindern, dass der Angeschuldigte die Freiheit dazu missbraucht, die wahrheitsgetreue Abklärung des Sachverhaltes zu vereiteln oder zu gefährden. Nach der Rechtsprechung des Bundesgerichtes genügt indessen die theoretische Möglichkeit, dass der Angeschuldigte in Freiheit kolludieren könnte, nicht, um die Fortsetzung der Haft oder die Nichtgewährung von Urlauben unter diesem Titel zu rechtfertigen. Es müssen vielmehr konkrete Indizien für die Annahme von Verdunkelungsgefahr sprechen (BGE 123 I 31 E. 3c S. 35; 117 Ia 257 E. 4c S. 261).
Konkrete Anhaltspunkte für Kollusionsgefahr können sich namentlich ergeben aus dem bisherigen Verhalten des Angeschuldigten im Strafprozess, aus seinen persönlichen Merkmalen, aus seiner Stellung und seinen Tatbeiträgen im Rahmen des untersuchten Sachverhaltes sowie aus den persönlichen Beziehungen zwischen ihm und den ihn belastenden Personen. Bei der Frage, ob im konkreten Fall eine massgebliche Beeinträchtigung des Strafverfahrens wegen Verdunkelung droht, ist auch der Art und Bedeutung der von Beeinflussung bedrohten Aussagen bzw. Beweismittel, der Schwere der untersuchten Straftaten sowie dem Stand des Verfahrens Rechnung zu tragen (vgl. BGE 132 I 21 E. 3.2.1; 123 I 31 E. 3c S. 35; 117 Ia 257 E. 4b S. 261, je mit Hinweisen).
Nach Abschluss der Strafuntersuchung bedarf der Haftgrund der Kollusionsgefahr einer besonders sorgfältigen Prüfung. Er dient primär der Sicherung einer ungestörten Strafuntersuchung. Zwar ist auch die richterliche Sachaufklärung vor unzulässigen Einflussnahmen zu bewahren, insbesondere im Hinblick auf die (in der Regel beschränkte) Unmittelbarkeit der Beweisaufnahme anlässlich der Hauptverhandlung. Je weiter das Strafverfahren vorangeschritten ist und je präziser der Sachverhalt bereits abgeklärt werden konnte, desto höhere Anforderungen sind jedoch grundsätzlich an den Nachweis von Verdunkelungsgefahr zu stellen (BGE 132 I 21 E. 3.2.2; 117 Ia 257 E. 4b S. 261; je mit Hinweisen).
3.1 Der Haftrichter bejahte im vorliegenden Fall Kollusionsgefahr, trotz des fortgeschrittenen Stadiums des Verfahrens, weil das Bezirksgericht die Zeugin offenbar selbst einvernehmen wolle. Die Aussage dieser Zeugin habe grossen Einfluss darauf, ob der Beschwerdeführer wegen Vergewaltigung verurteilt werde oder nicht.
Zwar räumte der Haftrichter ein, dass der Beschwerdeführer schon sehr viele Möglichkeiten zu kolludieren gehabt habe, sich aber bisher jeder Verdunkelung enthalten habe; auch die Staatsanwaltschaft sei bei ihrer Verfügung vom 4. Februar 2008 zum vorzeitigen Strafantritt davon ausgegangen, dass keine Kollusionsgefahr mehr bestehe. Nachdem nun aber die erneute Befragung des Opfers angeordnet worden sei, sei die Gefahr, dass auf dieses eingewirkt werde, wesentlich grösser als in der Vergangenheit.
Hinzu komme, dass sich das mutmassliche Vergewaltigungsopfer schon während des Untersuchungsverfahrens nicht zu intimen Details habe äussern wollen, mithin ihre Bereitschaft, von sich aus auszusagen, nicht sehr stark ausgeprägt sei und es entsprechend geringer Einflussnahme bedürfe, um diese Bereitschaft weiter einzuschränken oder gänzlich aufzuheben.
Der Haftrichter berücksichtigte ferner, dass sich der Beschwerdeführer laut Aussage der Zeugin bei dieser entschuldigt habe, d.h. den Kontakt zu ihr gesucht habe. Überdies habe der Beschwerdeführer zunächst gänzlich geleugnet, sexuell mit der Zeugin verkehrt zu haben; erst im Verlauf der Untersuchung habe er zugegeben, dass es zum Verkehr gekommen sei, dieser jedoch einvernehmlich erfolgt sei. Insofern habe er eine andere Sachverhaltsdarstellung als das mutmassliche Vergewaltigungsopfer deponiert.
3.2 Der Beschwerdeführer bestreitet das Vorliegen von Kollusionsgefahr. Er weist darauf hin, dass sämtliche Kontakte zur Zeugin vor Eröffnung des Strafverfahrens, zwischen dem 17. und 21. Juli 2005 stattgefunden hätten; in den bald drei Jahren seither habe er nie Kontakt zur Zeugin aufgenommen. Er kenne nicht einmal deren aktuelle Adresse und Telefonnummer.
Obwohl er ca. zweieinhalb Jahre lang in Freiheit gewesen sei, habe er nie versucht, die Zeugin zu beeinflussen. Insbesondere sei dies auch nicht vor deren staatsanwaltlicher Aussage vom 16. August 2007 geschehen, obwohl er von der bevorstehenden Einvernahme und deren Bedeutung für das Strafverfahren gewusst habe.
Die ohnehin geringe Aussagebereitschaft der Zeugin erhöhe die Kollusionsgefahr nicht, sondern verringere die Gefahr einer Beeinflussung eher. Hinzu komme, dass der Geschädigten inzwischen eine unentgeltliche Rechtsbeiständin bestellt worden sei, die sie beraten könnte, falls der Beschwerdeführer wider Erwarten den Kontakt zur Zeugin suchen sollte.
Die Aussage des Beschwerdeführers, wonach der Geschlechtsverkehr einvernehmlich durchgeführt worden sei, sei nicht neu, sondern schon im Juni 2007 deponiert worden, in Kenntnis der abweichenden Sachverhaltsdarstellung der Geschädigten.
Eventualiter beantragt der Beschwerdeführer, er sei unter Auferlegung einer Kontaktsperre aus der Haft zu entlassen. Diese Ersatzmassnahme würde genügen, um Kollusionsgefahr auszuschliessen. Zu diesem Eventualantrag habe sich der Haftrichter nicht geäussert, weshalb insoweit eine Verletzung der Begründungspflicht vorliege. Der Beschwerdeführer weist darauf hin, dass im vorzeitigen Strafvollzug weder der Brief- und Telefonverkehr noch der Besuch kontrolliert werde; es sei daher nicht einzusehen, weshalb die Fortsetzung des vorzeitigen Strafvollzugs Kollusionsgefahr ausschliessen, die Anordnung einer Kontaktsperre aber nicht ausreichen sollte.
3.3 In BGE 132 I 21 (E. 3.4 und 3.5 S. 25 ff.) bejahte das Bundesgericht Kollusionsgefahr in einem Fall, in welchem dem Angeklagten vorgeworfen wurde, bei seinen Aktivitäten zur Förderung der Prostitution bzw. im Rahmen des Menschenhandels massiven Druck auf verschiedene Geschädigte und deren Angehörige ausgeübt zu haben, durch Drohungen, Nötigungen, Tätlichkeiten und Erpressungsversuche. Bei dieser Aktenlage dürfe von einer besonders ausgeprägten Neigung des Beschwerdeführers zu Kollusionshandlungen ausgegangen werden, weshalb der Haftgrund der Verdunkelungsgefahr auch im fortgeschrittenen Verfahrensstadium ausreichend erstellt sei.
Auch in den anderen Fällen, in denen das Bundesgericht Kollusionsgefahr nach Anklageerhebung bejahte, bestanden konkrete Hinweise dafür, dass der Angeschuldigte bei einer Haftentlassung auf Zeugen Einfluss nehmen werde, um sie zu einem Widerruf oder einer Abschwächung ihrer belastenden Aussagen zu veranlassen (vgl. Entscheide 1P.612/2004 vom 11. November 2004 E. 3.4; 1P.788/2000 vom 11. Januar 2001 E. 2d) oder es lagen andere Umstände vor, die eine Beeinflussung wichtiger Belastungszeugen als wahrscheinlich erscheinen liessen (vgl. Entscheid 1P.548/1997 vom 27. Oktober 1997 E. 2c und d: geringes Alter des Opfers, das im selben Haus wohnte wie der Beschwerdeführer und dessen Angehörige).
Im vorliegenden Fall hat der Beschwerdeführer seit Einleitung des Strafverfahrens nie versucht, Kontakt zur Zeugin aufzunehmen und diese zu beeinflussen, auch nicht vor der Zeugeneinvernahme vom 16. August 2007, die dem Beschwerdeführer bzw. dessen Verteidigerin vorher angezeigt worden war. Die angebliche Entschuldigung des Beschwerdeführers bei der Zeugin erfolgte nach deren Aussage ein bis zwei Tage nach der Vergewaltigung, d.h. vor der Anzeige bei der Polizei.
Es liegen auch keine Anhaltspunkte dafür vor, dass die Zeugin vom Beschwerdeführer leicht beeinflusst werden könnte. Die Zeugin war nur flüchtig mit dem Beschwerdeführer bekannt. Sie war zum Tatzeitpunkt 17 Jahre alt und ist inzwischen erwachsen. Sie wird zudem im Strafverfahren durch eine Rechtsanwältin unterstützt.
Unter diesen Umständen liegt höchstens eine geringe Kollusionsgefahr vor, die möglicherweise die Anordnung eines Kontaktverbots rechtfertigen könnte. Dagegen erscheint die Gefahr einer Beeinflussung der Zeugin vor ihrer Einvernahme durch das Bezirksgericht nicht ausreichend, um die Haft weiter aufrechtzuerhalten.
4. Nach dem Gesagten ist die angefochtene Verfügung schon mangels Kollusionsgefahr aufzuheben, weshalb offen bleiben kann, ob auch eine Verletzung der Begründungspflicht im Hinblick auf Ersatzmassnahmen vorliegt.
Fraglich ist jedoch, ob weitere Haftgründe vorliegen; dies wurde vom Haftrichter nicht geprüft. In ihrem Antrag auf Fortsetzung der Untersuchungshaft vom 4. April 2008 bejahte die Staatsanwaltschaft Flucht- und Wiederholungsgefahr (im Hinblick auf Widerhandlungen gegen das Betäubungsmittelgesetz). In der Haftverfügung vom 23. Januar 2008 war Fluchtgefahr verneint, dagegen Wiederholungsgefahr bejaht worden.
Den kantonalen Behörden ist Gelegenheit zu geben, diese Prüfung nachzuholen. Insofern ist von der Anordnung der sofortigen Haftentlassung abzusehen. Die kantonalen Behörden müssen jedoch die noch ausstehenden Fragen prüfen und den Beschwerdeführer - allenfalls unter gewissen Auflagen - aus der Haft entlassen, sofern Flucht- und Wiederholungsgefahr zu verneinen sind.
Bei diesem Ausgang des Verfahrens hat der Beschwerdeführer Anspruch auf eine Parteientschädigung (Art. 68 BGG) und es sind keine Kosten zu erheben (Art. 66 Abs. 4 BGG). Das Gesuch um unentgeltliche Rechtspflege und Verbeiständung wird damit gegenstandslos.
Demnach erkennt das Bundesgericht:
1. Die Beschwerde wird teilweise gutgeheissen und die Verfügung des Bezirksgerichts Zürich, Haftrichter, vom 10. April 2008 aufgehoben. Die Sache wird zu neuem Entscheid an den Haftrichter zurückgewiesen. Im Übrigen wird die Beschwerde abgewiesen, soweit darauf einzutreten ist.
2. Es werden keine Kosten erhoben.
3. Der Kanton Zürich hat den Beschwerdeführer für das bundesgerichtliche Verfahren mit Fr. 2'000.-- zu entschädigen.
4. Dieses Urteil wird dem Beschwerdeführer, der Staatsanwaltschaft Limmattal/Albis und dem Bezirksgericht Zürich, Haftrichter, schriftlich mitgeteilt.
Lausanne, 6. Mai 2008
Im Namen der I. öffentlich-rechtlichen Abteilung
des Schweizerischen Bundesgerichts
Der Präsident: Die Gerichtsschreiberin:
Féraud Gerber