Move foreman LDAP functionality to ldap_fluff

Most logic comes from here: https://github.com/theforeman/foreman/blob/develop/app/models/auth_sources/auth_source_ldap.rb 

and https://github.com/theforeman/foreman/pull/529 , which this PR is meant to facilitate.
config.search_filter.empty? as Foreman may pass empty strings from the user through