made log in a requirement and created halfway elegant handling, fixes #65