Improved Login

Login still pretty much idiotic at handling errors