refactoring: remove duplication in login classes

* convert from static to singletons