Refactor oauth2 to use passportjs