oauth groundwork