Make AuthProxy LDAP bind code more robust

The existing version of LDAP_Auth.pm assumed that the user's
bind DN could be derived from the base DN, the ID attribute, and
the user's ID.  This is frequently the case, but not always,
particularly in Active Directory setups using sAMAccountName. This
commit instead uses the initial LDAP lookup as the authority for
determining the user's DN.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Capture and log AuthProxy logins with no account

The current AuthProxy.pm code assumes that if the external auth
passes, the Evergreen account will be there.  This protects
against cases where a user is in the external auth system but
has no matching account in Evergreen.

Signed-off-by: Dan Wells <dbw2@calvin.edu>
Signed-off-by: Bill Erickson <berick@esilibrary.com>