add AuthInterface & ldap fixes

add AuthInterface
auth ldap: internal refactor: handle all emails in place, instead of deciding which is primary in ldap