Refactoring: extracted reusable widgets for login and password, divided JS/template stuff into folders