Well, I have answered some of the questions with a look at the OpenLDAP source code. Under the hood, the ldap_init() does:
ldap_set_option(ld, LDAP_OPT_HOST_NAME, defhost);
And the ldap_initailize() does:
ldap_set_option(ld, LDAP_OPT_URI, url);
The man page for ldap_set_option() clearly states that both of those settings take multiple host names. The former (albeit deprecated) takes a list separated by whitespace whereas the latter takes a "comma- or space-separated list of URIs".
However either case call determines the default host, I'm not yet sure. It may be that the ldap.conf file (or the environment variables) are only used by the ldap command line tools and not the underlying API itself.
Still looking... feel free to save me some time if you know! ;-)
-Frank