api/auth: create AuthenticatorFunc type, replacing AuthMethod interface
api/auth: merge AuthenticatorFunc into Subsonic branch