added a login system, with login error detection :D