feat(app/oauth): handle email missing + oauth logic refactoring

Closes #6