oAuth auth added, refactored into different classes