add logout button
add Task-based async versions of APIs
reimplement OnAuthRequest to use async module APIs