Added some experimental commits

Added extra variables, changed some stuff. I advise you to read the comments on the code thoroughly.