It turns out that there have been some updates in the past few months such that the configuration example given will not work. Below is my working example of smtpd.conf (everything else in the post should be fine).
listen on 127.0.0.1 map "aliases" source db "/usr/local/etc/mail/aliases.db" map "secrets" source db "/usr/local/etc/mail/secrets.db" accept for local alias aliases deliver to mbox accept from local for domain gmail.com relay via "tls+auth://smtp.gmail.com:587" auth "secrets"
Brackets in the map config line are optional, and will eventually be removed alltogether.
More importantly, the configuration options for a relay host are now all put into that URL format.