great refactor
login added