auth: Implement backend user searching

Requires authentication plugins to implement a new AuthDirectorySearch
interface to define the two functions