ver 0.1.2b

Created a single struct to act as a pseudo-global since there became quite many arguments "just passing by" which took up space
Not sure if this is considered bad practice.

Also did some other code cleanup to make everything look a bit more neat