Well, here are the Exim wiki instructions for Cyrus: http://wiki.exim.org/CyrusImap i.e., Exim talks to Cyrus via LMTP.
Mailbox setup for Cyrus is via the cyradm tool (not sure how it's packaged on Debian). You'd create the mailboxes, grant privs for users, etc. Some basic docs are here: http://oreilly.com/catalog/mimap/chapter/ch09.html or http://nakedape.cc/info/Cyrus-IMAP-HOWTO/maintenance.html
Cyrus itself should be configured to listen on 993 publically (for SSL) and perhaps localhost:143. It should spawn an LMTP listener, for Exim delivery. There are perhaps some other ancillary services you can start up also, depending on what you're doing.
The squirrelmail bit is pretty simple. You'd set up squirrelmail so that you're pointing at, say, localhost:143. There are also some SMTP options you would set to point at your local Exim, if that's configured to send mail.