It’s probably worth pointing out at this juncture that this is for Debian GNU/Linux. I like Debian, and it works. Ubuntu’s not dissimilar to Debian, so the instructions should (on the whole) work for that too.
I’m also working on getting this configuration into a set of Ansible roles.
Dovecot - in August 2013, I switched from Courier-IMAP to Dovecot