better oauth setup