twitter login refactoring