Better Documentation of Code

I essentially just made the code a bit better documentation wise, it's not 100% complete, but it's good enough for the time being