Changing some light mechanics, cleaning up code, commenting unclear
parts